Mobile Application for NITTFEST.
- Java-Version - '12.x'
- Flutter-Version - '2.8.x'
- Dart-Version - '2.12' or above
- Android Studio
- Fork and Clone the Repo
git clone <YOUR_FORK_URL>
- Add remote upstream
git remote add upstream <MAIN_REPO_URL>
- Run the following command to enable githooks
git config core.hooksPath .githooks
- To get all the dependencies listed in the pubspec
flutter pub get
- Unzip google-services.json file
gpg --quiet --batch --yes --decrypt --passphrase="<PASSWORD>" \ --output <PATH_TO>/services.tar services.tar.gpg
tar xvf <PATH_TO>/services.tar
- To run the App
./run.sh .env
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
-
Add google-services.json file inside android/app/
-
Add the file path in .gitignore(if not already)
-
Creating tar file [services.tar], Run the command below in your project's working directory to create the archive file:
tar cvf services.tar android/app/google-services.json
-
Add the services.tar in .gitignore(if not already)
-
Run the command below to encrypt the services.tar file.
gpg -c services.tar
-
During encryption, it will ask for password which will be used to decrypt the encrypted file. After running the command, there will be a new file in your project's working directory named
services.tar.gpg
. -
Add the gpg password to github secrets