Du vibe-coding à l'App Store en un week-end : retour d'expérience

·7 min de lecture
Mis à jour le 13 août 2026

Je cherchais un endroit unique pour noter le poids de mon carlin, ses soins, ses rendez-vous et ses rappels. Les applications généralistes que j'avais testées ne correspondaient pas à mon organisation.

Pendant des années, j'ai fait avec les moyens du bord. Une base Notion pour les vaccins. Des Rappels iOS pour les plis du visage. Une note pour le poids. Un raccourci Siri pour le bain. Quatre outils, aucun lien entre eux, et surtout aucun qui comprenne quoi que ce soit aux carlins. Quand Apple a intégré Claude Agent nativement dans Xcode, je me suis dit que c'était peut-être le moment d'arrêter de bricoler.

Un week-end plus tard, une première version native était prête à être soumise sur l'App Store.

Note éditoriale : Pugify a désormais son propre site et son propre domaine. Pour suivre le projet ou télécharger l'app, rendez-vous sur pugify.dog.

Un besoin de niche, pas un diagnostic vétérinaire

Le carlin est une race brachycéphale qui peut nécessiter un suivi adapté à chaque animal. Le poids, les soins et le calendrier vaccinal dépendent notamment de l'âge, de l'état de santé, du mode de vie et des recommandations du vétérinaire.

Je n'avais pas trouvé d'application qui réunisse les champs et rappels que je voulais pour mon propre usage. Ce constat n'est pas un inventaire exhaustif de l'App Store et peut évoluer.

Pugify sert à consigner des informations et à préparer un échange avec un professionnel. L'application ne pose pas de diagnostic, ne fixe pas de poids idéal et ne remplace pas les conseils d'un vétérinaire. Les rappels configurés par l'utilisateur doivent suivre les recommandations données pour son animal.

C'est le genre de problème invisible de l'extérieur. Si vous n'avez pas de carlin, vous ne voyez pas le besoin. Si vous en avez un, vous le vivez tous les jours.

1300 lignes de specs avant d'ouvrir Xcode

Le vibe-coding a une réputation. On tape un prompt, l'IA crache du code, ça marche. La réalité, c'est l'inverse. Plus le prompt est vague, plus le résultat est inutilisable. La vraie compétence du vibe-coding, ce n'est pas de coder. C'est d'écrire des specs.

J'ai passé une matinée entière sur un fichier CLAUDE.md. 1300 lignes. Ce n'est pas un brief de trois paragraphes envoyé à la va-vite. C'est un cahier des charges complet qui décrit l'architecture attendue (MVVM strict, SwiftData, SwiftUI), la structure de navigation, les modèles de données avec leurs enums, la palette de couleurs, et surtout les données de santé du carlin.

Pour cette dernière partie, le risque principal était de transformer une règle générale en conseil individuel. J'ai donc séparé les fonctions de suivi des recommandations de santé. L'utilisateur conserve ses propres objectifs et rappels, à partir des indications de son vétérinaire. L'IA génère du code, pas de l'expertise vétérinaire. Une règle métier fausse peut être implémentée sans erreur technique et rester dangereuse.

J'y reviendrai, mais cette étape représente à mon sens 80% du vrai travail. Le reste, c'est de l'exécution.

Ce que Claude Code a produit en un après-midi

J'ai lancé Claude Agent dans Xcode avec mon CLAUDE.md de 1300 lignes. Ce qui est sorti du premier run : une architecture MVVM complète. Des modèles SwiftData. Un suivi des repas avec statistiques hebdomadaires. Un suivi du poids avec courbe Swift Charts. Un système de soins quotidiens avec indicateurs vert/orange/rouge. Des rappels de vaccins avec dates de rappel. Une fiche vétérinaire avec export PDF. Un Tip Jar via StoreKit 2. Et 12 fichiers de tests unitaires qui couvrent les transitions entre stades de vie, les seuils de poids, les statuts de soins, les calculs de dates.

Le tout sans une seule dépendance externe. Zéro package tiers. Pas d'API, pas de serveur, pas de cloud, pas de Firebase, pas d'analytics. Tout tourne en local sur l'iPhone.

C'est impressionnant. Je n'aurais pas été capable de produire ça moi-même en si peu de temps. Probablement pas en plusieurs semaines.

Mais le design était hideux.

Claude Code avait généré une interface fonctionnelle mais sans âme, basée sur une palette Catppuccin. C'était propre, technique, et ça ressemblait à n'importe quelle app de productivité. Pas à quelque chose que des gens qui photographient leur carlin 12 fois par jour auraient envie d'ouvrir.

J'ai passé la soirée à chercher une direction. J'ai regardé des dizaines d'apps. J'ai fini par m'inspirer de Finch, une app de bien-être avec un univers visuel très doux, pour créer ce que j'ai appelé la palette "Pugify Latte" : fond crème chaud (#FFF8F0), accents pastel, typographie arrondie, ambiance kawaii et chaleureuse. J'ai écrit un nouveau prompt de redesign et relancé Claude Code.

Le résultat n'avait plus rien à voir. Même code, même fonctionnalités, une toute autre émotion.

La leçon tient en une phrase : l'IA implémente une vision. Elle n'en a pas.

L'autre moitié du travail

Quand l'app tourne sur le simulateur, on a l'impression d'avoir fini. En réalité, on est à mi-chemin.

Il faut des screenshots App Store. Six en français, six en anglais, avec des mockups iPhone, des textes accrocheurs, un fond de couleur cohérent. J'ai fait ça dans Canva. L'icône de l'app, un carlin stylisé en 1024x1024, je l'ai générée avec Gemini. Il faut une page de support et une politique de confidentialité, c'est obligatoire pour soumettre. Je les ai déployées sur mon VPS Hetzner, intégrées à mon site Next.js existant via Coolify, bilingues français-anglais. Deux descriptions App Store complètes, des mots-clés optimisés pour l'ASO, du texte promotionnel.

Et puis il y a App Store Connect : créer les produits In-App Purchase, renseigner les coordonnées bancaires et fiscales demandées, puis vérifier l'éligibilité au Small Business Program. Apple indique une commission réduite à 15 % sur les applications payantes et achats intégrés pour les développeurs admis au programme, sous réserve de ses critères et conditions. Le traitement fiscal dépend de la situation du développeur et mérite une vérification auprès d'un professionnel plutôt qu'une conclusion tirée d'un formulaire.

Rien de tout ça n'est difficile. Mais c'est du travail réel, incompressible, et l'IA n'y change strictement rien.

La soumission et les obligations européennes

J'ai soumis Pugify avec une politique de confidentialité, une page de support, des informations App Privacy et des notes de revue cohérentes avec les fonctions de l'application. Apple a approuvé cette version. Ce résultat ne garantit rien pour une autre application ni pour une mise à jour : chaque binaire est examiné selon les règles et les fonctions déclarées.

Pugify ne contient ni compte utilisateur, ni analytique, ni suivi publicitaire. Cela simplifie la déclaration App Privacy, mais ne dispense pas de vérifier les autres règles, notamment StoreKit, les métadonnées et les affirmations liées à la santé.

Pour distribuer dans l'Union européenne, App Store Connect demande aussi au développeur d'indiquer s'il agit comme professionnel au sens du Digital Services Act et, le cas échéant, de fournir les informations exigées. Cette étape doit être anticipée, car Apple peut demander une vérification avant l'affichage dans l'UE.

Ce que le vibe-coding change vraiment

✔ Ce que l'IA fait mieux que moi

Générer du code structuré à partir de specs claires. L'architecture, les modèles, les vues, les tests, c'est rapide et propre. Implémenter des patterns bien documentés (StoreKit 2, notifications locales, export PDF). Produire en un après-midi ce qui m'aurait pris des semaines en développement iOS natif.

Je ne suis pas développeur Swift de formation. Le vibe-coding m'a permis de contourner cette barrière technique sans sacrifier la qualité du résultat. C'est un changement réel.

⚠ Ce que l'IA ne fait pas à ma place

Trouver la bonne idée. C'est moi qui connaissais mon besoin et les limites des outils que j'avais testés.

Avoir du goût. C'est moi qui ai rejeté le premier design et qui ai passé une soirée à chercher la bonne direction visuelle.

Naviguer dans l'écosystème Apple. Les formulaires fiscaux, la conformité européenne, les screenshots aux bonnes dimensions, l'ASO. Tout ça reste du travail humain, méticuleux, et indispensable.

Le vibe-coding ne transforme pas n'importe qui en développeur. Il transforme quelqu'un qui sait ce qu'il veut construire en quelqu'un qui peut le construire. La nuance est importante. Sans vision produit claire et sans specs précises, l'IA produit du bruit avec de la syntaxe correcte.

Sources consultées

Conclusion

En un week-end, je suis passé d'un suivi réparti entre plusieurs outils à une première application native, avec journal, rappels configurables, courbes de poids, export pour préparer un rendez-vous et Tip Jar. Le travail de conformité et de publication a continué après le code.

Ce qui m'a le plus marqué, ce n'est pas la vitesse de génération du code. C'est le déplacement du travail. J'ai passé plus de temps à rédiger des specs qu'à "coder". Plus de temps dans App Store Connect que dans Xcode. Le code est devenu le maillon le plus automatisable de la chaîne.

La vraie question n'est plus "est-ce que je sais coder ?". C'est "est-ce que je sais ce que je veux construire, et est-ce que je suis capable de le décrire avec précision ?"

Si la réponse est oui, le vibe-coding peut accélérer l'implémentation. Les tests, la sécurité, l'expertise métier et la publication restent à la charge de l'éditeur.

Existe aussi : Lire en anglais