# Frontend The frontend of this project is a Flutter application designed to run on both Android and iOS devices (and possibly as a PWA). The frontend is responsible for displaying the user interface and handling user input. It communicates with the backend via a REST-api to retrieve and send data. ## Getting Started The flutter application is divided into multiple chunks of code. - the `lib` directory contains the main code of the application. - the `android` and `ios` directories contain platform-specific code. - the root directory contains configuration files and metadata. To run the application, you need to have the Flutter SDK installed. You can find instructions on how to do this [here](https://flutter.dev/docs/get-started/install). Once you have the Flutter SDK installed, you can locally install the dependencies by running: ```bash flutter pub get ``` ## Deployment (using fastlane) The application is deployed to the Google Play Store and the Apple App Store using fastlane: [https://docs.fastlane.tools/](https://docs.fastlane.tools/) Fastlane is installed as a Ruby gem. Since the bundler-gemfile is scoped to a single directory, a gemfile is included in both the `android` and `ios` directories. Once installed, the usage is ```bash cd frontend/android # or ios bundle install bundle exec fastlane ``` This is reused in the CI/CD pipeline to automate the deployment process.