Hello Hive!
Today I'd like to start a new series of articles documenting my apprenticeship in mobile app development with Flutter.
This year I've set myself an ambitious goal: to publish a mobile app on the PlayStore by the end of 2024. This is not only a professional goal for me, but also a long-held dream.
I've made a lot of attempts in the past, pauses and discontinuous learning.
2024 is the year I change all that. My commitment is reinforced by my decision to document my journey here on Hive. This way, I can benefit from a kind of social pressure.
To begin with, I'm going to dive into the development of an application that is a replica of the existing "HabitKit" application.
This first development will serve as a training ground for acquiring a complete understanding of the application development cycle from A to Z.
As I'm about to copy "HabitKit", I'm making it clear that I won't be publishing this application.
Now that the presentation of the project and the goal is done, let's dive into what I've already accomplished in this "HabitKit" replica project:### 1. creation of Project Flutter
I started by setting up the development environment and creating the Flutter project.It had been a few months since I last opened a flutter project. For those interested, I use :
I'm not a pro at organizing folders when I'm developing. In general, I tend to put them everywhere.
While researching on the Internet, I came across many different techniques for structuring a flutter project.
For this first project, I'm going for the simplest:
That said, for future applications, I'll probably do something more professional. I think it's interesting to try out different ways of doing things.
Next, I created the file for the application's home page.This is where users arrive when they launch the application.
For the moment, there's not much to it:
Later, once I've found a way to store and display habit data, this page should look like the one on the right in the screenshot below :
source : https://www.habitkit.app
Finally, I worked on the functionality allowing users to add a new habit.
So, when the "➕" button is clicked, a popup opens from bottom to top. This offers the user the opportunity to enter:- The habit name;
As I continue to move forward with the development of this Flutter application, here are two major goals I plan to tackle soon:
The next big challenge is to store habit data directly on the phone. I prefer local storage to external database storage for several reasons:
Once habit data can be stored, the next step is to display them:
I don't know if this series of articles might be of interest to you. My hope is that, by sharing my journey, I can not only motivate myself through the support and benevolent "social pressure" of the Hive community, but also offer something useful or inspiring to each and every one of you.
If you have any suggestions, tips, or even specific requests about what you'd like to see in my future articles, I invite you to share them.
In particular, your feedback could help shape the content of this series to make it more relevant and interesting for everyone.
FRANCAIS
Bonjour Hive !
Aujourd'hui je souhaite commencer une nouvelle série d'articles qui documentera mon apprentissage dans le développement d'applications mobiles avec Flutter.
Cette année, je me suis fixé un objectif ambitieux : publier une application mobile sur le PlayStore d'ici la fin de 2024. Ce n'est pas seulement un objectif professionnel pour moi, mais aussi un rêve de longue date.
J'ai fait beaucoup de tentatives par le passé, de pauses, et d'apprentissages discontinus.
2024 est l'année où je change tout cela. Mon engagement est renforcé par ma décision de documenter mon parcours ici, sur Hive. Je pourrais ainsi profiter d'une sorte de pression sociale.
Pour commencer, je vais me plonger dans le développement d'une application qui est une réplique de l'application existante "HabitKit".
Ce premier développement va me servir de terrain d'entraînement pour acquérir une compréhension complète du cycle de développement d'une application de A à Z.
Etant donné que je m'apprête à copier "HabitKit", je précise que je ne publierais pas cette application.
Maintenant que la présentation du projet et de l'objectif est faite, plongeons dans ce que j'ai déjà accompli dans ce projet de réplique de "HabitKit" :
J'ai commencé par mettre en place l'environnement de développement et créer le projet Flutter.
Cela faisait quelques mois que je n'avais pas ouvert de projet flutter. Pour les intéressés, j'utilise :
Je ne suis pas un pro de l'organisation des dossiers quand je développe. En général, j'ai tendance à en mettre partout.
En me renseignant sur Internet, je suis tombé sur beaucoup de techniques différentes pour structurer un projet flutter.
Pour ce premier projet, je vais au plus simple :
Cela dit, pour les prochaines applications, je ferais sans doute quelque chose de plus pro. Je pense qu'il est intéressant de tester plusieurs façons de procéder.
J'ai ensuite créé le fichier pour la page d'accueil de l'application. C'est ici que les utilisateurs arrivent lorsqu'ils lancent l'application.
Pour le moment, il n'y a pas grand-chose :
Plus tard, une fois que j'aurai trouvé un moyen de stocker et d'afficher les données des habitudes, cette page devrait ressembler à celle de droite dans la capture d'écran ci-dessous :
source : https://www.habitkit.app
Enfin, j'ai travaillé sur la fonctionnalité permettant aux utilisateurs d'ajouter une nouvelle habitude.
Ainsi, lorsque l'on clique sur le bouton "➕", un popup s'ouvre du bas vers le haut. Ce dernier offre à l'utilisateur la possibilité de saisir :
Alors que je continue à avancer dans le développement de cette application Flutter, voici deux objectifs majeurs que je prévois d'aborder prochainement :
Le prochain grand défi consiste à stocker les données des habitudes directement sur le téléphone. Je préfère le stockage en local au stockage dans une base de données externe pour plusieurs raisons :
Une fois que les données des habitudes pourront être stockées, l'étape suivante sera de les afficher :
Je ne sais pas si cette série d'articles peut être intéressante pour vous. Mon espoir est que, en partageant mon parcours, je puisse non seulement me motiver grâce au soutien et à la "pression sociale" bienveillante de la communauté Hive, mais aussi offrir quelque chose d'utile ou d'inspirant à chacun d'entre vous.
Si vous avez des suggestions, des conseils, ou même des demandes spécifiques sur ce que vous aimeriez voir dans mes prochains articles, je vous invite à les partager.
Vos retours pourraient notamment orienter le contenu de cette série pour la rendre plus pertinente et intéressante pour tous.
The article's presentation photo is generated by AI and edited with Canva.
The other photos are my screenshots.
English is translated from French by DeepL