Flutter: My first app
Tags: flutter, beginners, firebase, firstpost
Published: 2023-05-30 12:27:26

# I developed my first mobile application
As the title suggests, i developed my first mobile application using Flutter. It's been quite a journey since i have suffered from being unable to land on the right technologies to use, which caused me to stagnate for ages. However, i finally committed on a stack of my own choice, and began developing the application from start to finish, with the goal in mind, of finishing the project and deploying it for the hundreds of expected customers.

## Why am i writing this post?
I am writing this post to document my journey, as well as educate others who might have the same interests as me. I have learned a lot during this project, which i would like to express in a series of technical posts, in order to document my wins and failures, and maybe to help others avoid the same pitfalls that i have fallen into.

That said, I really enjoy writing, and I think that writing is a good tool for both memorising what you have done, and it also enables me to reflect on my decisions throughout my projects, which helps me better myself and make better decisions in the future. 

## Features of the application
The app i developed is a mobile application for both iOS and Android, which is developed solely using the Flutter framework with Dart.

The app is developed for a music festival and has a few features, which is designed to make the communication from the administration of the festival to the customers easier. The application has a few features:
- A home page
  - The home page provides the customer with general information s.a. when the festival will start, where you can buy tickets, and social media links. 
- A schedule page
  - The schedule page displays a list of the musicians, as well as the time that they are playing at the festival. 
- A favorites page
  - The customer is able to add musicians to a list of favorites, which will add the band to a separate list, and prompt the customer when the musician goes live. 

All this information can be edited by the administration of the festival through a CMS (Content Management System) that I developed in Flutter as well. 

All data is stored in Firestore and Firebase Storage, which, as i mentioned earlier, is maintained by the administration of the festival.

## What is next?
In order to fully document my project, I have decided to break it up in various topics from project initialisation (Flutter and Firebase) to deployment (both to the Google Play Store and Apple Store). This will include:
- Project initialisation
  - How to setup a Flutter app with Firebase
- State management
  - How i chose to handle state management of the application
- UI design process
  - How the UI is built 
- CMS system
  - How i setup and built the CMS system using the topics above
- Deployment 
  - How i deployed the app to the Google Play Store and the Apple Store

Each of the topics that i have listed above will be in a tutorial format, containing the reasoning for my choice of technologies as well as the pitfalls i have fallen into along the way.

Any suggestions from you about any topics you would like to have covered in this series would be much appreciated, as it would give me some pointers on your interests as well. 

Until next time!