Étude de cas Elvis Web · Application mobile iOS et Android · Novembre 2026
Devant un rayon de rhums, la question est toujours la même : cette bouteille va-t-elle me plaire ? C’est à cette question simple que répond La Quille, l’application mobile pour iPhone et Android que nous avons réalisée chez Elvis Web. On scanne une étiquette, l’application compare le profil du rhum à vos goûts et affiche un score de compatibilité personnalisé.
Dans cet article, nous racontons le passage d’une V1 gratuite à une V2 Premium : le concept, les choix techniques, les décisions de conception — y compris ce que nous avons choisi de ne pas faire — et ce que nous en retenons pour tout projet d’application mobile.
La Quille en bref
L’idée : une seule question, pas un catalogue
Les applications de rhum existantes sont souvent des catalogues ou des carnets de notes. Elles supposent que l’utilisateur sait déjà ce qu’il aime. La Quille part d’un autre constat : un débutant ne sait pas toujours nommer ses goûts, et un amateur confirmé veut surtout éviter de se tromper devant un rayon bien garni.
Le produit est donc construit autour d’un seul geste — scanner — et d’une seule réponse : un score clair, accompagné de quelques raisons lisibles.
V1 : un socle gratuit qui fait l’essentiel
La V1 couvre le cœur du service : scan d’étiquette, recherche manuelle, fiche produit détaillée, score de compatibilité, favoris, historique et profil gustatif de base. Elle a été publiée sur l’App Store en juin 2026.
Un principe a guidé la suite : ce socle ne devait jamais être dégradé. Quand on ajoute une offre payante, la tentation est de restreindre le gratuit pour pousser à l’abonnement. Nous avons fait l’inverse : le scan, le score, le RhumDex — une collection qui se complète à mesure qu’on découvre des rhums — et les retours post-dégustation restent gratuits, y compris dans la V2.
Le moteur : six axes sensoriels et deux profils
Chaque rhum et chaque utilisateur sont décrits par des axes sensoriels : douceur, fruité, végétal/floral, boisé, intensité et complexité. Le score de compatibilité mesure la proximité entre le profil du rhum et celui de l’utilisateur.
Pourquoi un sixième axe en V2 ? Dans la V1, les notes végétales, florales et de canne fraîche étaient regroupées avec le fruité. Résultat : un rhum agricole très floral pouvait voir son « fruité » artificiellement abaissé, alors qu’il exprimait simplement un autre registre aromatique. Cette séparation rend les profils plus justes : un rhum agricole à la canne fraîche obtient désormais une valeur élevée en végétal, tandis qu’un rhum aux fruits exotiques présente une valeur élevée en fruité. Cette distinction est particulièrement utile pour les rhums agricoles et les rhums blancs.
La contrainte était claire : aucune perte de données. Pas de remise à zéro des profils, pas de suppression d’historique et des champs nullables pour les anciens produits, afin que l’affichage évolue progressivement.
Deux profils plutôt qu’un. On ne boit pas un rhum à l’apéritif comme on le déguste. Le questionnaire d’entrée se ramifie donc selon les habitudes de l’utilisateur et peut créer un profil Apéritif, un profil Dégustation, ou les deux. Les scores s’adaptent ensuite au profil actif.
Séparer ce qu’on perçoit de ce qu’on aime
Un piège classique des applications qui apprennent des retours utilisateurs consiste à mélanger perception et appréciation. Si « j’adore ce rhum » fait monter son score de douceur, les profils dérivent vers les extrêmes.
Nous avons donc posé une règle stricte : l’appréciation ne modifie jamais les axes sensoriels. Les retours post-dégustation distinguent la perception — ce rhum est-il doux, boisé, floral ? — de l’appréciation — l’avez-vous aimé, le rachèteriez-vous ?
Le questionnaire s’adapte aussi au niveau déclaré : simple et rapide pour un débutant, plus nuancé pour un utilisateur confirmé, dont les réponses pèsent davantage dans l’apprentissage des profils produits.
Freemium : ce qui reste gratuit, ce qui devient Premium
La V2 ajoute un abonnement Premium qui débloque Ma Cave, la fonction « Que boire ? », un journal de dégustation avancé, l’analyse de l’évolution du profil, des filtres avancés et des recommandations mensuelles personnalisées.
Techniquement, un abonnement n’a rien d’un simple bouton. Il faut intégrer StoreKit côté Apple et la Google Play Billing Library côté Android, valider les reçus côté serveur, puis gérer les renouvellements, annulations, expirations et restaurations d’achat. Une erreur sur ce module a un impact direct sur le chiffre d’affaires et peut aussi provoquer un rejet par les stores. C’est le chantier qui demande le plus de tests, y compris en environnement sandbox.
Ma Cave et « Que boire ? » : les décisions de conception
Ma Cave permet de gérer les bouteilles que l’on possède ; « Que boire ? » propose, parmi elles, ce qui correspond le mieux au moment choisi : apéritif, dégustation ou peu importe. C’est là que les arbitrages ont été les plus instructifs.
- Ne jamais inventer de donnée. Aucun prix par défaut, aucune estimation de marché. Le « montant d’achat renseigné » additionne uniquement les prix saisis par l’utilisateur et précise sur combien de bouteilles il est calculé.
- Supprimer une moyenne trompeuse. Nous avons retiré la « compatibilité moyenne de la Cave » et le profil sensoriel moyen : une moyenne peut décrire un rhum qui n’existe pas, et une cave n’a aucune obligation d’être équilibrée. Seul le score de chaque bouteille est conservé.
- Ne pas forcer le résultat. Si une ou deux bouteilles seulement sont réellement adaptées, l’application en propose une ou deux, et non trois pour faire joli. Mieux vaut dire qu’aucune bouteille ne convient que recommander à côté.
- Un classement neutre. Le score reste le critère principal. Seuls des critères secondaires, comme une bouteille déjà ouverte ou la moins récemment dégustée, départagent des scores proches. Aucun critère commercial n’intervient.
- Distinguer les notions. Une bouteille est fermée, ouverte ou terminée — son état physique ; elle est « dégustée » si un retour existe. Posséder une bouteille ne dit rien sur le fait de l’avoir goûtée ou aimée : l’application ne le demande donc pas à l’ajout.
- Une fiche par référence. Trois bouteilles identiques donnent une seule fiche, mais chaque achat peut garder son propre prix et sa date en base.
Cette sobriété est volontaire : mieux vaut peu de fonctions fiables qu’un tableau de bord impressionnant mais approximatif.
Les choix techniques qui comptent
Côté mobile, nous avons retenu React Native pour livrer iOS et Android à partir d’une base de code commune. Le serveur repose sur Node.js et une base PostgreSQL, dont la sécurité au niveau des lignes isole les données de chaque utilisateur.
Deux détails ont fait la différence.
Des identifiants produits stables
Chaque rhum possède un identifiant interne unique, indépendant de sa ligne dans le fichier d’import du catalogue. Un produit renommé garde son identifiant, un produit retiré est archivé plutôt que supprimé, et un produit fusionné redirige vers l’ancien. Ainsi, une mise à jour du catalogue ne casse ni l’historique, ni les favoris, ni le journal.
Le scan qui sait dire « je ne sais pas »
Mieux vaut afficher « rhum non reconnu » qu’une mauvaise référence. Chaque échec alimente une file de scans non reconnus que l’équipe utilise pour enrichir le catalogue.
Publier sur l’App Store et sur Google Play
Publier sur les deux stores demande de préparer des éléments qui n’ont rien de technique. Pour une application autour de l’alcool, les deux stores ont classé La Quille en 18+. Ils demandent aussi de déclarer précisément les données collectées : fiche de confidentialité côté Apple, section « Sécurité des données » côté Google. Ces déclarations doivent correspondre à la réalité du produit et à la politique de confidentialité, dans le respect du RGPD.
Il faut aussi lire attentivement les règles de validation d’Apple et les règles de contenu de Google Play, surtout dès qu’un abonnement est proposé : les conditions de renouvellement et de résiliation doivent être explicites dans la fiche.
Premiers résultats et leçons
Les premiers retours sont encourageants : l’application affiche 4,9/5 sur l’App Store, sur un échantillon encore modeste. Nous préférons l’écrire tel quel : le lancement est récent, et c’est la méthode qui nous intéresse ici.
- Protéger le gratuit. Un socle fiable, jamais dégradé, construit la confiance qui rend l’abonnement crédible.
- Ne pas tout automatiser. Une moyenne ou un conseil approximatif abîme la crédibilité d’un moteur de recommandation.
- Penser la donnée dès le départ. Identifiants stables, champs nullables, archivage : tout ce qui évite de casser l’existant.
- Tester les paiements comme du code critique. Sandbox, reçus, cas limites.
- Écrire peu de fonctions, mais les écrire proprement. Chaque fonction ajoutée est une fonction à maintenir et à expliquer.
Questions fréquentes
Combien de temps faut-il pour créer une application comme La Quille ?
Cela dépend surtout du périmètre. Le scan et le score forment un socle ; l’abonnement, le journal et la cave ajoutent des chantiers lourds : paiements, données et tests. Nous détaillerons les ordres de grandeur dans un prochain article sur le coût d’une application mobile.
React Native ou développement natif ?
React Native permet de partager l’essentiel du code entre iOS et Android, ce qui réduit coûts et délais. Le natif garde l’avantage pour des besoins très spécifiques, comme des performances graphiques poussées ou des fonctions système avancées.
L’application est-elle gratuite ?
Oui pour l’essentiel : scan, score de compatibilité, RhumDex et retours post-dégustation sont gratuits. Premium est un abonnement optionnel.
Votre projet d’application mobile
Vous avez une idée d’application iOS ou Android ?
Vous imaginez une application grand public ou un outil métier ? Parlons de votre concept, des fonctionnalités prioritaires et du périmètre technique. Découvrez aussi notre présentation du projet La Quille et nos développements sur mesure.
Pour aller plus loin : La Quille, réalisation Elvis Web · Site officiel de La Quille.