FlutterIAFirebaseCosmétiqueBilingue

Daiky

« L'IA qui protège votre peau. » Daiky décode la composition d'un produit cosmétique en une trentaine de secondes : on scanne, on comprend ce qu'on s'applique, on décide en connaissance de cause. L'application est publiée sur l'App Store.

Voir le site live →Voir le site live →
~30 s
pour une analyse complète
50 000+
ingrédients référencés
FR / EN
application bilingue

Étude de cas — Daiky

Contexte et problème résolu

La liste d'ingrédients d'un cosmétique est publique, mais illisible : nomenclature INCI, noms latins, dénominations chimiques. L'information est là et reste inutilisable pour la personne qui tient le flacon. Daiky part de ce décalage. L'enjeu n'était pas de collecter des données — elles existent — mais de rendre un verdict compréhensible en quelques secondes, devant un rayon.

Comment ça fonctionne

L'utilisateur scanne le code-barres du produit, ou photographie directement l'étiquette quand le produit n'est pas référencé. L'application identifie les composants, les rapproche de sa base et restitue une évaluation hiérarchisée plutôt qu'une liste brute. Le parti pris d'interface est de donner d'abord la réponse, puis le détail à qui veut creuser.

Le positionnement du produit repose sur son indépendance : les évaluations ne dépendent d'aucune marque, et sont adossées à un travail de validation par des toxicologues.

Architecture technique

Daiky est développé en Flutter, ce qui permet de couvrir iOS et Android depuis une seule base de code tout en gardant la main sur chaque détail d'interface — un critère décisif pour un produit dont la lisibilité est la promesse principale.

Firebase Auth & Firestore
Firebase Storage
App Check & Messaging
Scan code-barres + caméra

Trois choix structurants méritent d'être signalés. App Check a été activé dès le départ : une application qui expose une API d'analyse attire les usages automatisés, et il est bien plus coûteux de fermer la porte après coup. L'internationalisation a été posée dès la première version, pas greffée ensuite — extraire des chaînes de caractères disséminées dans un projet mature est un chantier ingrat que nous préférons éviter. Enfin, le code est organisé en couches distinctes (écrans, providers, repositories, services), pour que la logique d'analyse reste testable indépendamment de l'interface.

Ce que le projet nous a appris

La difficulté d'un produit de ce type n'est pas technique mais éditoriale : décider quoi afficher en premier. Un verdict trop tranché devient contestable, un verdict trop nuancé ne sert à rien devant un rayon. Cet arbitrage a demandé plus d'itérations que le scan lui-même — un rappel utile que sur les applications grand public, la valeur se joue souvent dans la restitution, pas dans le traitement.