Développer une application IA de suivi bébé avec Flutter : retour d'expérience sur NUBO
01 Oct 2023 6 min de lecture 21 vues

Développer une application IA de suivi bébé avec Flutter : retour d'expérience sur NUBO

Parmi les projets que nous avons réalisés récemment, NUBO est probablement celui qui nous a le plus appris — tant sur le plan technique qu'humain. Il s'agit d'une application mobile pour jeunes parents qui utilise l'intelligence artificielle pour suivre le développement de leur bébé.

Voici un retour d'expérience honnête sur ce projet : les choix techniques, les difficultés rencontrées, et les enseignements qu'on en tire.

Le concept de NUBO

Le principe est simple : les parents saisissent les données de leur bébé (taille, poids, sommeil, alimentation), et l'IA analyse ces données pour fournir des recommandations personnalisées. Par exemple : "le sommeil de votre bébé est en dessous de la moyenne pour son âge — voici quelques pistes" ou "le développement moteur est dans les normes, continuez ainsi".

L'idée est séduisante sur le papier. En pratique, le niveau de détail et de rigueur requis — surtout quand il s'agit de santé infantile — a rendu le projet bien plus exigeant que prévu.

Pourquoi Flutter et Firebase

Le client avait besoin d'une application iOS et Android avec un budget qui ne permettait pas deux développements séparés. Flutter était le choix naturel : une seule base de code, des performances natives, et un design entièrement personnalisable. Les animations et transitions sont fluides, ce qui est important pour une application que les parents utilisent quotidiennement.

Pour le backend, nous avons choisi Firebase : authentification, base de données temps réel, notifications push et stockage de fichiers. L'intégration entre Flutter et Firebase est particulièrement bien pensée, ce qui nous a permis d'avancer rapidement.

Côté architecture, nous avons adopté le pattern BLoC (Business Logic Component) pour gérer l'état de l'application. Sur un projet de cette envergure, une architecture claire dès le départ est indispensable pour maintenir un code lisible et évolutif.

L'intégration de l'IA : le coeur du projet

La partie la plus stimulante — et la plus délicate — concernait l'intelligence artificielle. Le premier niveau était relativement simple : comparer les données de croissance du bébé aux courbes de référence de l'OMS et afficher des percentiles.

Mais le client souhaitait aller plus loin : des recommandations personnalisées basées sur les tendances observées sur plusieurs semaines. Cela a nécessité l'intégration de modèles de machine learning entraînés sur des données médicales anonymisées.

La dimension santé imposait un niveau de rigueur élevé. Nous avons collaboré avec un pédiatre pour valider chaque algorithme de recommandation. Une application qui concerne des nourrissons ne peut pas se permettre d'approximations.

Le résultat final est fiable : les recommandations sont pertinentes et validées médicalement.

Les défis techniques majeurs

Les notifications push

Faire fonctionner des rappels ("c'est l'heure de peser bébé") de manière fiable sur l'ensemble des appareils Android est un défi sous-estimé. Chaque constructeur (Samsung, Xiaomi, Huawei) applique ses propres règles d'optimisation de batterie, ce qui peut empêcher les notifications d'arriver. Nous avons consacré deux semaines entières à ce seul sujet pour couvrir les cas les plus courants.

La synchronisation hors-ligne

Les parents ne sont pas toujours connectés, notamment dans certaines zones au Maroc. L'application devait fonctionner sans connexion et synchroniser les données automatiquement dès le retour du réseau. Firebase offre des outils pour cela, mais la mise en oeuvre demande un travail d'ingénierie significatif.

Flutter est-il adapté pour une application santé ?

Tout à fait. Flutter gère parfaitement les graphiques en temps réel — nous avons utilisé le package fl_chart pour les courbes de croissance de NUBO, avec des animations fluides et des performances que React Native aurait eu du mal à égaler sur des données aussi denses. Les calculs côté client, la gestion de l'état complexe et le rendu de listes volumineuses sont tous des points forts de Flutter. La principale limitation concerne l'accès à des capteurs hardware très spécifiques — un oxymètre, un glucomètre ou d'autres dispositifs médicaux connectés via Bluetooth Low Energy demandent parfois des packages natifs supplémentaires et une maintenance plus lourde. Mais pour une application de suivi basée sur des données saisies par l'utilisateur, Flutter est un excellent choix : le code Dart est lisible, le hot reload accélère considérablement le développement, et le déploiement simultané sur iOS et Android évite de maintenir deux bases de code séparées. Pour les projets HealthTech sans capteur hardware complexe, c'est notre technologie recommandée.

Combien de temps prend le développement d'une application comme NUBO ?

Pour le projet NUBO, le développement a duré environ quatre mois : trois semaines de design, deux mois et demi de développement actif, et le reste pour les tests approfondis, les ajustements basés sur les retours des parents testeurs, et la validation médicale. Ce délai suppose une équipe déjà expérimentée avec Flutter et Firebase — un premier projet avec ces technologies, ou une équipe en phase d'apprentissage, prendrait significativement plus de temps. Ce cadre de quatre mois correspond à une application mobile de complexité moyenne, avec une authentification, des profils utilisateurs, des graphiques temps réel et une logique métier basée sur des recommandations. Une application plus simple — connexion, saisie de données, affichage de contenu — peut être livrée en six à huit semaines. Une application plus complexe avec des fonctionnalités sociales, un backend IA personnalisé ou des intégrations tierces multiples peut prendre six mois ou plus. Le meilleur moyen d'obtenir une estimation précise reste de cadrer le périmètre fonctionnel avec précision avant de commencer.

Le résultat

NUBO est aujourd'hui une application dont nous sommes fiers. Le design est doux et rassurant (palette de verts pastel, adaptée à l'univers de la petite enfance), l'IA fonctionne de manière fiable, et les retours des parents utilisateurs sont positifs.

Ce projet nous a permis de consolider notre expertise en IA appliquée, en développement Flutter à grande échelle, et en gestion des contraintes spécifiques au mobile (notifications, mode hors-ligne, diversité des appareils).

Les enseignements clés

  • La rigueur prime sur la vitesse quand il s'agit de données sensibles (santé, enfants). Mieux vaut prendre le temps de valider avec des experts.
  • Les détails techniques "simples" (notifications, synchronisation) peuvent représenter une part importante du temps de développement. Anticipez-les dans votre planning.
  • Flutter + Firebase est un duo particulièrement efficace pour les applications mobiles cross-platform avec des besoins temps réel.

Vous avez un projet d'application mobile — dans la santé, le bien-être ou tout autre domaine ? Parlons-en. Nous aimons particulièrement les projets qui ont du sens, et nous proposons des devis gratuits pour vous aider à cadrer votre idée.

Partager cet article

Twitter/X

Vous avez un projet ?

Contactez-nous pour transformer vos idées en solutions digitales performantes.

Innodev Nexus

Assistant virtuel

Ce site utilise des cookies

Nous utilisons des cookies pour mesurer notre audience et sécuriser nos formulaires (Google Ads, reCAPTCHA). Vous pouvez accepter ou refuser ces cookies non essentiels.