Client-side Application for NITTFEST

Overview

Nittfest-Client

Client Application for NITTFEST.

Flutter

Requirements

  • Java-Version - '12.x'
  • Flutter-Version - '2.8.x'
  • Dart-Version - '2.12' or above
  • Android Studio

Setup

  • Fork and Clone the Repo
    git clone <YOUR_FORK_URL>
    
  • Add remote upstream
    git remote add upstream <MAIN_REPO_URL>
    
  • To get all the dependencies listed in the pubspec
    flutter pub get
    
  • To run the App
    flutter run 
    

Architecture

MVC architecture using GetX

  • Model refers to all the data and its related logic.
  • View Present data to the user or handles user interaction
    • Implemented using GetView/GetResponsiveView
    • GetView is a constant statelessWidget, usually associated with a GetXController
    • GetResponsiveView is a screen-width depended widget associated with a GetXController and used in case of responsive UI design.
  • Controller refers to an interface between Model and View components
    • Implemented using GetXController.
    • Consists of 3 life cycles.
      • onInit() : called when controller’s memory allocated
      • onReady() : called upon UI widgets appearing on screen
      • onClose() : called before the controller gets deleted from the memory

GithubActions

Workflow

  • on: [pull_request, push] to main: This workflow will work whenever someone push or, make a pull request main branch.
  • In the steps we are:
    • if pull_request
      • Run Formatter
      • Run Analyzer
    • if push
      • Build Web-Application.
      • Deploy changes using Firebase hosting.
      • Visit nittfest website

GitHooks

Configure git-hooks path

  • Run the following command
    git config core.hooksPath .githooks
    

Features

  • pre-commit

    • Runs Formatter
    • Runs Analyzer
  • pre-push

    • Checks for un-committed files
    • Runs Test cases

Contributing to Nittfest-Client

Here are the guidelines we'd like you to follow:


NOTE:

Never push directly to main repository (upstream). Only push to your forked repo (origin) and send a pull request to the main repository


Coding Rules

To ensure consistency throughout the source code, keep these rules in mind as you are working:

  • The coding style to be followed along with instructions to use flutter_lint
  • Enable sound-null-safety

Git Commit Guidelines

Commit Message Format

Each commit message consists of a header, a body and a footer. The header has a special format that includes a type, a scope and a subject:

<type>(<scope>): <subject>
<BLANK LINE>
<body>
<BLANK LINE>
<footer>

Any line of the commit message cannot be longer 100 characters! This allows the message to be easier to read on github as well as in various git tools.

Example Commit Message

feat(MainPage): Implement rive animations to MainPage

In this PR,
* rive assets are added.
* rive animations are handled in getx controller

Please follow the conventions followed here.

Also, refer this page on how to write the body

You might also like...

Flutter drawer (dynamic ready side menu)

Flutter drawer (dynamic ready side menu)

Flutter side menu (Drawer) Getting Started Use KFDrawer widget as Scaffold's body with items property (ListKFDrawerItem) you should define onPressed

Dec 5, 2022

Adds a side menu in all screens with debug information

Adds a side menu in all screens with debug information

Adds a side menu in all screens with debug information. You can decide which information to show and create new modules to include more information.

Oct 7, 2022

A Flutter package with custom implementation of the Side Menu (Drawer)

A Flutter package with custom implementation of the Side Menu (Drawer)

Flutter Awesome Drawer Bar A Flutter package with custom implementation of the Side Menu (Drawer) Getting Started To start using this package, add awe

Nov 13, 2022

This is a E-commarce Side.

bivinnorokom A web view Flutter project. Getting Started This project is a starting point for a Flutter application. A few resources to get you starte

May 12, 2022

A powerful plugin that fully uses the native image library's ability to display images on the flutter side.

PowerImage A powerful plugin that fully uses the native image library's ability to display images on the flutter side. 中文文档 Features: Supports the abi

Dec 23, 2022

Dartness is a progressive dart framework for building efficient and scalable server-side applications

Dartness is a framework for building efficient, scalable dart server-side applications. It provides an easy and quick way to develop modern standalone server.

Dec 12, 2022

A Flutter step_tracker plugin is collect information from user and display progress through a sequence of steps. this plugin also have privilege for fully customization from user side. like flipkart, amazon, myntra, meesho.

A Flutter step_tracker plugin is collect information from user and display progress through a sequence of steps. this plugin also have privilege for fully customization from user side. like flipkart, amazon, myntra, meesho.

step_tracker plugin A Flutter step_tracker plugin is collect information from user and display progress through a sequence of steps. this plugin also

Oct 21, 2022

🦜 Parrot - A progressive Dart framework for building efficient, reliable and scalable server-side applications.

🦜 Parrot A progressive Dart framework for building efficient, reliable and scalable server-side applications. What is Parrot? Parrot is a Dart framew

Nov 11, 2022
Comments
  • feat: Landing Page, Forms Page and 404 Page

    feat: Landing Page, Forms Page and 404 Page

    In this PR the following features have been added:

    1. Landing Page

      • A giant wheel and a ballon who respond to mouse span and mouse hover respectively.
      • A social icon widget which fans out with Instagram, Facebook and LinkedIn icons hyperlinked to the respective sites.
    2. Forms Page

      • A type form based page using the carousel_slider package.
      • The navigator has been tweaked to understand both button pushes and manual scrolls and act accordingly.
    3. 404 Page

      • A tree is a state machine asset from Rive which acts on tap.

    Other minor changes:

    • Colors have been edited in the theme.
    • Footer is responsive.
    • All necessary font sizes are now responsive.
    opened by Mukundh-Srivathsan 0
Owner
Delta Force
The Official Programming Club of NIT Trichy
Delta Force
Client side of openMessaging Mobile App integration

flutter-openMessaging This is designed as an example only for using a Flutter Mobile App as the client for the firebase BaaS in openMessaging for Gene

null 1 Apr 30, 2022
Inspired by PocketBase provide client side SQLite database, schema generator and admin UI

Firebase SQLite Taking Cloud Firestore ODM to the next level. Admin UI The Admin UI is a web interface for managing your database in firestore and is

Rody Davis 12 Dec 11, 2022
flutter ecommerce application with admin side .authentication and storage with the help of firebase

ecommerce A new Flutter project. Getting Started This project is a starting point for a Flutter application. A few resources to get you started if thi

null 1 Nov 10, 2022
A GraphQL client for Flutter, bringing all the features from a modern GraphQL client to one easy to use package. Built after react apollo

Flutter GraphQL Table of Contents Flutter GraphQL Table of Contents About this project Installation Usage GraphQL Provider [Graphql Link and Headers]

Snowball Digital 45 Nov 9, 2022
A GraphQL client for Flutter, bringing all the features from a modern GraphQL client to one easy to use package.

GraphQL Flutter ?? Bulletin See the v3 -> v4 Migration Guide if you're still on v3. Maintenance status: Low. Follow #762 for updates on the planned ar

Zino & Co. 3.1k Jan 5, 2023
Vrchat mobile client - VRChat Unofficial Mobile Client For Flutter

VRChatMC VRChatの非公式なAPIを利用したVRChatのモバイルクライアント Flutterで作成されたシンプルなUIが特徴的です iosビルドは

ふぁ 8 Sep 28, 2022
An easy to use side menu in flutter and can used for navigations

Easy Sidemenu Easy sidemenu is An easy to use side menu (bar) for flutter that you can use for navigations in your application. Sidemenu is a menu tha

Mohammad Jamalianpour 86 Dec 29, 2022
A side drawer using Flutter_advanced_drawer package

advanced_drawer A new Flutter project. Getting Started This project is a starting point for a Flutter application. A few resources to get you started

Azamatjan 3 Feb 10, 2022
As a beginner , this is my own side project by using flutter & dart , Firebase . This app still in progress .

helpful_app A new Flutter application. Getting Started This project is a starting point for a Flutter application. A few resources to get you started

null 0 Nov 23, 2021
A Side Menu plugin for flutter and compatible with liquid ui for flutter

Liquid Shrink Side Menu A Side Menu plugin for flutter and compatible with liquid ui Side Menu Types There are 8 configuration of Liquid shrink side m

Raj Singh 18 Nov 24, 2022