- Accueil
- /
- Blog
- /
- Études de Cas
- /
- Push Beyond : Tracking de performances en muculation
Push Beyond : Tracking de performances en muculation


TL;DR
Push Beyond est une application qui permet aux pratiquants de musculation de créer leurs propres entraînements et suivre leurs performances
Table des matières
Origine du projet
J'adore le sport. J'en ai pratiqué plusieurs au cours des années, mais ces derniers temps, je me suis principalement concentré sur la musculation et le street workout.
Dans ces sports, pour progresser, il faut essayer de toujours faire un peu mieux d'une séance à l'autre. C'est pourquoi la plupart des pratiquants notent leurs performances sur un petit carnet.
J'ai donc pensé qu'il serait plus malin de pouvoir faire la même chose via une application mobile.
Intentions
Il existe bien entendu de nombreuses applications qui proposent de résoudre le même problème.
Cependant, après en avoir testé plusieurs, je n'ai pas trouvé chaussure à mon pied : soit les fonctionnalités n'étaient pas celles que j'attendais, soit l'interface n'était pas ergonomique.
Mon ambition en créant cette application était donc de faire une application qui colle à 100% avec les besoins des pratiquants de street workout, mais également de proposer la meilleure expérience utilisateur.
Étant moi même le principal utilisateur, j'avais une idée bien précise de ce que je voulais.
Technologies utilisées
Je souhaitais faire une application Android et iOS, mon choix s'est donc naturellement porté vers Flutter. Il s'agit d'un framework open source extrêmement performant, qui permet de déployer une application sur plusieurs plateformes (iOS, Android, watchOS, Windows, MacOS, etc...) avec une seule base de code. De plus, il est soutenu par Google, ce qui lui apporte une certaine crédibilité.
Pour la base de données, j'ai choisi d'utiliser firebase, une base de données NoSQL qui est très facile à connecter à Flutter, et qui permet d'avoir une application fonctionnelle rapidement.
Fonctionnalités
L'application permet de créer ses propres exercices : ainsi les utilisateurs ne sont pas limités à un seul sport.
Ensuite, il est possible de composer sa routine d'entraînement avec les exercices précédemment créés.
Une fois sa routine prête, on peut aller faire sa séance de sport. L'application affiche aux utilisateurs pour chaque série, l'exercice à exécuter, le nombre de répétitions, ainsi que leur score lors de la séance précédente, pour qu'il puisse essayer de faire mieux.
Pour chaque série, le score de l'utilisateur est sauvegardé en base de données, ainsi il pourra suivre son évolution par la suite.
Axes d'amélioration
J'ai créé cette application lorsque j'apprenais Flutter. Ainsi, j'aimerais retravailler l'architecture du code pour le rendre plus facile à maintenir, et pouvoir scaler l'application. Pour cela, j'utiliserais une architecture CLEAN (il y a plusieurs implémentations possibles, mais les principes restent les mêmes).
Je passerais également la base de données sur Supabase au lieu de Firebase. Globalement, le service est le même, sauf que Supabase est un projet open source, et propose une base Postgres, ce que je préfère, car je dois admettre que j'ai du mal à me faire à la logique du NoSQL 😅