# Créer une application avec Claude Code : tutoriel iPhone

> Installer Claude Code, créer le projet Expo, écrire le CLAUDE.md, prompter écran par écran, puis envoyer sur TestFlight avec EAS : le tutoriel complet.

Page originale : [Créer une application avec Claude Code : tutoriel iPhone](https://devoria.fr/blog/creer-une-application-avec-claude-code)
Auteur : [Mehdi Azizi](https://devoria.fr/mehdi-azizi)
Publication : 2026-09-23
Dernière révision du contenu : 2026-10-09


## Créer une application avec Claude Code : la réponse courte

Pour créer une application avec Claude Code, il te faut un accès payant à Claude Code (abonnement compatible ou Console à l'usage), Node.js, un iPhone avec Expo Go et un projet Expo. Tu écris un fichier `CLAUDE.md` qui décrit ta stack et tes règles, tu demandes un écran à la fois, tu testes chaque écran sur ton iPhone, puis tu envoies l'app sur TestFlight avec EAS.

Ce tutoriel complète mon guide [créer une app iOS avec l'IA](https://devoria.fr/blog/creer-une-app-ios-avec-l-ia), qui explique ce que l'IA fait bien et ce qu'elle rate. Ici, on passe à la pratique : les commandes, les fichiers, les prompts.

Je code mes apps iOS avec Claude Code et Cursor tous les jours. Ma stack : React Native, Expo, EAS, RevenueCat et Supabase. Solys, un réveil à mini-jeux, et TradaZen, une app d'entraînement au trading, sont publiées sur l'App Store. Nolera et Clic ont été refusées par Apple, puis corrigées. Tout ce qui suit vient de ce travail.

Pour voir cette méthode appliquée à une app publiée, j'ai documenté [le parcours de TradaZen, du premier commit aux refus d'Apple et aux pivots](https://devoria.fr/blog/etude-de-cas-tradazen-app-iphone). Ce retour d'expérience complète les étapes du tutoriel.

## Étape 1 : réunir les prérequis

Avant la première commande, vérifie que tu as tout ça.

### Un compte Claude payant

Claude Code n'est pas inclus dans l'offre gratuite de claude.ai. [D'après la documentation d'Anthropic](https://code.claude.com/docs/en/setup), il faut un compte Pro, Max, Team, Enterprise ou Console. L'offre Pro permet de commencer, dans ses limites d'usage.

### Node.js et un terminal

Expo demande [Node.js en version LTS](https://docs.expo.dev/get-started/create-a-project/), sur macOS, Windows ou Linux. Claude Code tourne sur macOS 13 ou plus, Windows 10 ou plus et les principales distributions Linux.

### Un iPhone et Expo Go

Installe Expo Go depuis l'App Store sur ton iPhone pour essayer tes premiers écrans sans compiler ta propre app. Avant de créer le projet, [vérifie la version du SDK compatible avec ton installation sur la page Expo Go](https://expo.dev/go). Le dernier SDK et la version distribuée sur l'App Store ne sont pas toujours disponibles au même moment : Expo a notamment documenté [ce décalage en mai 2026](https://expo.dev/changelog/expo-go-and-app-store-may-2026). Ne pars donc pas d'un numéro de version trouvé dans un ancien tutoriel. Pour utiliser tes propres modules natifs, prévois une build de développement.

### Un Mac ? Pas obligatoire

Les builds iOS sont compilées sur les serveurs d'Expo avec EAS Build, avec la version de Xcode que choisit ton SDK Expo ([ITMS-90725](https://devoria.fr/blog/itms-90725-sdk-version-xcode)), et [EAS Submit fonctionne sur macOS, Linux et Windows](https://docs.expo.dev/submit/ios/). Tu peux donc aller jusqu'à TestFlight depuis un PC. Le guide [publier une app iOS sans Mac](https://devoria.fr/blog/publier-une-app-ios-sans-mac) détaille cette chaîne.

### Un compte Apple Developer, plus tard

Tu n'en as pas besoin pour coder et tester dans l'Expo Go de l'App Store. Il devient obligatoire au moment d'envoyer ton app sur TestFlight. On y revient à l'étape 7.

## Étape 2 : installer Claude Code

Sur macOS, Linux ou WSL, la méthode recommandée par Anthropic est l'installateur natif :

```bash
curl -fsSL https://claude.ai/install.sh | bash
```

Sur Windows, dans PowerShell :

```powershell
irm https://claude.ai/install.ps1 | iex
```

Vérifie ensuite que l'installation a marché :

```bash
claude --version
```

Si tu préfères npm, la commande est `npm install -g @anthropic-ai/claude-code`. N'utilise pas `sudo` devant, la documentation le déconseille explicitement.

Au premier lancement de `claude`, un navigateur s'ouvre pour te connecter à ton compte. Ensuite, tu écris en français : Claude lit tes fichiers, propose des modifications et lance des commandes, avec ton accord.

## Étape 3 : créer le projet Expo

Place-toi dans le dossier où tu ranges tes projets et lance :

```bash
npx create-expo-app@latest mon-app
cd mon-app
npx expo start
```

Si l'outil propose de choisir entre la compatibilité avec l'Expo Go de l'App Store et le dernier SDK, choisis la compatibilité pour cet exercice. Dans tous les cas, vérifie que la version créée est prise en charge par l'Expo Go installé sur ton iPhone avant de poursuivre. Tu pourras préparer une build de développement lorsque ton projet en aura besoin.

Un QR code apparaît dans le terminal. Scanne-le avec l'appareil photo de ton iPhone : l'app s'ouvre dans Expo Go. Un détail bloque souvent la première fois : [Expo Go n'ouvre ton projet que si Expo CLI et Expo Go sont connectés au même compte Expo](https://docs.expo.dev/get-started/start-developing/). Lance `npx expo login` sur ton ordinateur et connecte-toi avec le même compte dans l'app.

Pourquoi Expo plutôt que Swift ? Claude connaît très bien React Native, et tu testes sans Mac. J'explique ce choix sur la page [React Native et Expo pour une app mobile](https://devoria.fr/expertise/application-mobile-react-native-expo).

Garde en tête une limite d'Expo Go : il ne contient que les modules natifs qu'il embarque déjà. Dès que tu ajoutes une librairie native qu'il ne connaît pas, les achats in-app par exemple, il te faudra une build de développement. Ce n'est pas un problème pour les premiers écrans.

### Choisir le bon environnement de test

Expo Go, une build de développement et TestFlight ne prouvent pas la même chose. [Expo décrit la build de développement](https://docs.expo.dev/develop/development-builds/introduction/) comme ta propre app de test, avec les modules natifs dont ton projet a besoin.

| Ce que tu veux vérifier                                       | Où tester                                                                | Limites du test                                                 |
| ------------------------------------------------------------- | ------------------------------------------------------------------------ | --------------------------------------------------------------- |
| Afficher un premier écran et essayer sa navigation            | Expo Go, avec un SDK compatible                                          | Le comportement de modules natifs absents d'Expo Go             |
| Utiliser une bibliothèque native ajoutée au projet            | Une build de développement incluant cette bibliothèque                   | La version distribuée ni son acceptation par Apple              |
| Parcourir l'app destinée aux testeurs, puis tester ses achats | Une build envoyée sur TestFlight et des produits correctement configurés | Un paiement réel de client ou la validation de la mise en vente |

Avant d'ajouter une dépendance, demande à Claude : « Est-elle compatible avec mon SDK et mon environnement de test actuel ? Faut-il recompiler l'app ? Appuie ta réponse sur la documentation. » Tu évites de passer une soirée à corriger un module qu'Expo Go ne peut simplement pas charger, ou un SDK refusé à l'envoi pour [API non publique](https://devoria.fr/blog/itms-90338-api-non-publique).

## Étape 4 : écrire le fichier CLAUDE.md du projet

C'est l'étape la plus rentable. Claude Code peut conserver une mémoire de projet, mais tu dois expliciter ses règles. Le fichier `CLAUDE.md`, placé à la racine du projet, apporte des consignes communes aux sessions. C'est là que tu écris ce que Claude ne peut pas deviner.

Dans le dossier du projet, lance `claude`, puis tape `/init`. [Selon la documentation](https://code.claude.com/docs/en/memory), Claude analyse le projet et génère un premier `CLAUDE.md` avec les commandes et les conventions qu'il trouve. Tu le complètes ensuite avec tes règles. Anthropic recommande de rester sous 200 lignes : plus le fichier est long, moins les consignes sont suivies.

Voici un exemple court, proche de ce que j'utilise :

```markdown
# Mon app

## Stack

- Expo (SDK de create-expo-app), React Native, TypeScript strict
- Navigation : Expo Router, un fichier par écran dans app/
- Données : Supabase (plus tard), jamais de clé secrète dans l'app

## Règles

- Un écran à la fois. Ne touche pas aux fichiers hors de la demande.
- Aucune hauteur fixe en points : tailles relatives à l'écran,
  ScrollView si le contenu peut dépasser.
- Chaque écran gère 3 états : chargement, vide, erreur.
- Textes de l'interface en français avec accents.
- Avant de coder plus de 2 fichiers : propose un plan et attends mon accord.

## Commandes

- Lancer : npx expo start
- Tests : reprendre le script réellement présent dans package.json.
  S'il n'existe pas encore, le signaler ; ne pas annoncer de tests réussis.
- Types : npx tsc --noEmit
- Après chaque modification : lancer les tests et les types, puis me dire
  ce qui a changé et comment le vérifier sur iPhone.
```

La règle sur les hauteurs fixes n'est pas là par hasard. On y revient à l'étape 6.

## Étape 5 : prompter un écran à la fois

« Crée-moi une app de suivi d'habitudes avec abonnement » produit un projet énorme, fragile, impossible à relire. La méthode qui marche est inverse : une demande, un écran, un résultat que tu peux tester en cinq minutes.

### Commence par un plan

Pour tout ce qui touche plusieurs fichiers, passe en mode plan. Appuie sur `Shift+Tab` jusqu'à voir `plan mode on` dans la barre d'état. [Dans ce mode](https://code.claude.com/docs/en/common-workflows), Claude lit les fichiers et propose un plan, mais ne modifie rien avant ton accord. Tu relis, tu corriges, puis tu valides.

Un premier prompt de cadrage ressemble à ça :

```text
Je veux une app de suivi d'habitudes. Version 1 : une seule fonction,
cocher les habitudes du jour. Propose la liste des écrans et la
structure des dossiers. Ne code rien pour l'instant.
```

### Décris l'écran, ses états et ses limites

Ensuite, un prompt par écran. Plus tu nommes les cas limites, moins Claude les oublie :

```text
Crée l'écran app/index.tsx qui liste les habitudes du jour.
- Chaque ligne : nom de l'habitude, case à cocher, série en cours.
- État vide : un texte et un bouton « Ajouter une habitude ».
- État de chargement et état d'erreur avec un bouton « Réessayer ».
- Les données viennent d'un tableau local pour l'instant.
- Doit tenir sur un iPhone SE comme sur le plus grand iPhone :
  pas de hauteur fixe, la liste défile.
Lance les tests et les types à la fin.
```

### Corrige sans laisser tout réécrire

Quand un détail ne va pas, reste précis et limite le périmètre :

```text
Sur mon iPhone, le bouton « Ajouter une habitude » passe sous la barre
du bas quand la liste est longue. Corrige uniquement ce problème dans
app/index.tsx, sans toucher aux autres fichiers. Explique la cause.
```

Tu peux aussi coller une capture d'écran dans le terminal : Claude la lit.

## Exercice : une habitude qui reste cochée après relancement

Voici un exercice pédagogique à réaliser dans ton projet, pas une capture d'une fonctionnalité déjà livrée. Le but est de passer d'un écran généré à un comportement vérifiable. Il ne demande ni compte utilisateur ni achat intégré.

1. Garde une seule habitude locale nommée « Lire 10 minutes ».
2. Demande une case à cocher et une sauvegarde locale compatible avec ton projet Expo.
3. Demande à l'agent de préciser les fichiers modifiés, la dépendance éventuelle et les commandes réellement exécutées.
4. Installe ou ouvre ton app sur l'iPhone, puis réalise les vérifications ci-dessous.

```text
À partir de l'écran existant, rends l'habitude « Lire 10 minutes »
cochable et conserve son état après fermeture puis réouverture de l'app.
Utilise le stockage local compatible avec les dépendances du projet.
Ne crée ni compte, ni serveur, ni abonnement, ni statistique supplémentaire.
Avant de coder, explique comment tu géreras le chargement et un échec
de lecture ou de sauvegarde. Ensuite, fais une modification limitée.
À la fin : fichiers changés, commandes exécutées, limites non testées
et étapes exactes pour vérifier le résultat sur iPhone.
```

| Action sur ton iPhone               | Résultat attendu                                 | Si ça échoue                                               |
| ----------------------------------- | ------------------------------------------------ | ---------------------------------------------------------- |
| Ouvrir l'app pour la première fois  | L'habitude et sa case sont visibles, sans erreur | Vérifier l'état initial et le chargement du stockage       |
| Cocher puis fermer et rouvrir l'app | L'habitude reste cochée                          | Contrôler l'écriture puis la lecture de la même clé        |
| Décocher puis relancer              | L'habitude reste décochée                        | Vérifier que la valeur `false` est aussi sauvegardée       |
| Refaire le parcours en mode avion   | La fonction locale reste disponible              | Repérer une dépendance réseau ajoutée sans raison          |
| Augmenter la taille du texte        | Le nom et le contrôle restent accessibles        | Retirer les contraintes qui tronquent ou masquent l'action |

Ne demande pas « réécris tout » si une ligne échoue. Décris l'action, le résultat attendu et le résultat observé. Par exemple : « Après relancement, la case redevient vide alors que je l'avais cochée. Explique la cause et corrige la persistance sans modifier le design. »

[Télécharger le modèle CLAUDE.md et la fiche de vérification (.md)](https://devoria.fr/ressources/claude-md-premiere-app-ios.md). Ouvre-le dans ton éditeur ou dans une application de notes. Adapte les commandes à ton projet avant de le confier à l'agent.

## Étape 6 : faire relire et tester

Claude Code écrit du code qui a l'air juste. Seuls tes tests et ton iPhone te disent s'il l'est.

### Des tests pour ne pas casser ce qui marche

Plus ton app grandit, plus chaque demande risque de casser un écran déjà validé. Le projet créé par Expo n'a pas de tests : demande d'abord à Claude d'installer Jest avec `jest-expo`, comme le recommande la documentation d'Expo. Puis demande des tests pour la logique importante (calcul d'une série, validation d'un formulaire) et fais-les lancer après chaque modification. C'est pour ça que les commandes de test sont écrites dans le `CLAUDE.md` : Claude les exécute sans que tu aies à le rappeler. Avec un fichier de règles et des tests, l'IA casse beaucoup moins ce qui marchait déjà.

### Relis chaque modification

Tu n'as pas besoin de comprendre chaque ligne. Tu dois savoir quels fichiers ont changé, et pourquoi. Si Claude a touché un fichier hors sujet, demande-lui la raison avant d'accepter. Puis pose la question : « qu'est-ce qui peut casser ici ? ».

### Vérifie sur un petit et un grand iPhone

C'est la leçon qui m'a coûté le plus cher. Solys a été refusée par Apple au titre de la règle 2.1 : la démo de l'onboarding était impossible à gagner sur un iPad Air, où l'app tournait en mode compatibilité iPhone. La cause : des hauteurs codées en points fixes, pas relatives à la taille de l'écran. Sur mon iPhone, tout allait bien. Le code avait été relu, les tests étaient verts. Aucun outil n'avait regardé l'écran à une autre taille.

Depuis, je vérifie chaque écran au minimum sur le plus petit iPhone et sur le plus grand. Si tu n'as qu'un téléphone, le simulateur de Xcode sur Mac ou un ami équipé d'un autre modèle fera l'affaire. Regarde en particulier les textes longs, le clavier ouvert sur les formulaires et les boutons fixés en bas.

## Ce que Claude Code fait mal

Claude Code excelle sur les écrans et la logique. Hors de ton dossier, il est beaucoup moins fiable.

### La signature et les certificats

Sans connexion autorisée à ton compte Apple, Claude ne connaît pas son état. Il peut inventer une [procédure de certificats](https://devoria.fr/blog/certificat-push-apns-expo) qui mélange Xcode et Expo. Laisse EAS gérer la signature : [la documentation d'Expo](https://docs.expo.dev/build/setup/) explique qu'EAS CLI peut générer et stocker ces fichiers pour toi, après connexion à ton compte Apple Developer.

### App Store Connect

La fiche, les [déclarations de confidentialité](https://devoria.fr/blog/app-privacy-app-store-connect), les [captures](https://devoria.fr/kits/captures-app-store) et les liens légaux sont des données à vérifier dans App Store Connect. Claude Code peut désormais agir dans un navigateur connecté via [son intégration Chrome](https://code.claude.com/docs/en/chrome), avec les accès nécessaires. Cela ne garantit pas que les champs sont exacts : relis les informations, vérifie les comptes utilisés et valide toi-même les engagements et l'envoi en revue.

### Les abonnements

Écrire un paywall prend dix minutes. Faire concorder les produits d'App Store Connect, leur configuration dans RevenueCat et le code, c'est une autre histoire. Un identifiant différent d'un caractère et le paywall reste vide chez le reviewer. Les pièges les plus courants sont listés dans [les erreurs de paywall iOS des débutants](https://devoria.fr/blog/paywall-ios-erreurs-debutant).

### Les cas limites

Sans consigne, Claude traite le cas nominal. Pas de réseau, une liste vide, un achat interrompu : c'est à toi de les nommer.

### La sécurité Supabase

Quand Claude crée des tables dans Supabase, vérifie que la sécurité au niveau des lignes (RLS) est activée, avec des politiques qui limitent chaque utilisateur à ses propres données. Vérifie aussi qu'aucune clé secrète ne se retrouve dans le code de l'app. Écris ces deux interdits dans ton `CLAUDE.md` dès que tu branches une base.

## Étape 7 : passer sur TestFlight avec EAS

Tes écrans ont été vérifiés dans Expo Go ou dans une build de développement, selon les modules utilisés. Passe maintenant à la build qui sera distribuée aux testeurs.

### Préparer EAS

Il te faut maintenant un [compte Apple Developer payant](https://devoria.fr/blog/compte-developpeur-apple-prix-inscription) : [Expo le rappelle](https://docs.expo.dev/submit/ios/), il est obligatoire pour envoyer une app à l'App Store. Ensuite, installe l'outil d'Expo et configure le projet :

```bash
npm install --global eas-cli
eas login
eas build:configure
```

Ajoute un identifiant de bundle unique dans `app.json`, sous `ios.bundleIdentifier`, par exemple `com.tonnom.monapp`.

### Compiler et envoyer

```bash
eas build --platform ios --profile production
eas submit --platform ios
```

La première commande compile l'app sur les serveurs d'Expo. Au premier lancement, EAS te propose de se connecter à ton compte Apple pour [créer les certificats](https://devoria.fr/blog/certificat-provisioning-profile-ios). La seconde envoie la build à App Store Connect. Tu peux aussi tout faire d'un coup avec `eas build --platform ios --auto-submit`.

La build doit être traitée par Apple avant d'apparaître dans TestFlight, et ce traitement peut la refuser, par exemple en [ITMS-90717](https://devoria.fr/blog/itms-90717-icone-app-store-transparence) pour une icône transparente. Un envoi réussi ne signifie donc pas qu'elle est déjà installable : [contrôle son état dans App Store Connect](https://devoria.fr/blog/numero-de-build-version-app-store-connect). Les testeurs internes, externes et la revue bêta sont expliqués dans mon guide [TestFlight pour tester son app iPhone](https://devoria.fr/blog/testflight-tester-son-app-iphone).

Refais les vérifications de l'étape 6 sur cette build. Une app qui marche dans Expo Go peut encore planter en production, par exemple quand un [module natif](https://devoria.fr/blog/guideline-2-5-1-api-publiques) manque.

## Combien ça coûte vraiment

Voici les prix affichés par les services et vérifiés le 27 septembre 2026, en dollars. Le montant facturé dépend aussi de ta région, des taxes et de ton usage : vérifie l'offre avant de souscrire.

- **Abonnement Claude** : [l'offre Pro est à 20 $ par mois](https://claude.com/pricing), ou 17 $ par mois en paiement annuel. Les offres Max démarrent à 100 $ par mois, pour plus d'usage.
- **Compte Apple Developer** : [99 $ par an](https://developer.apple.com/programs/), obligatoire pour TestFlight et l'App Store.
- **EAS** : [l'offre gratuite d'Expo](https://expo.dev/pricing) inclut 15 builds iOS par mois, dans une file d'attente de basse priorité. L'offre Starter coûte 19 $ par mois, plus l'usage supplémentaire.

Pour un petit prototype, Pro et l'offre gratuite d'EAS peuvent constituer une base, si tu restes dans leurs quotas. Ajoute le compte Apple avant TestFlight, puis chiffre séparément les services réellement nécessaires : base de données, stockage ou API payante. Le [modèle de budget d'une première app](https://devoria.fr/ressources/budget-premiere-app-ios.csv) aide à poser ces postes. Ton temps de configuration et de vérification reste à prévoir.

## Les limites honnêtes, et où on bloque

Claude Code a changé qui peut créer une app iPhone. Il n'a pas changé ce qu'Apple exige pour la publier. Un refus arrive vite : Solys en a pris, Nolera et Clic aussi. Les motifs les plus fréquents sont racontés dans [pourquoi Apple refuse une app](https://devoria.fr/blog/pourquoi-apple-refuse-votre-app).

Tu peux aller seul jusqu'à TestFlight avec ce tutoriel. Là où on bloque le plus souvent, c'est après : brancher les abonnements, préparer le dossier pour le reviewer, comprendre un refus. Pour la vue d'ensemble du parcours, lis la page [créer une application iPhone](https://devoria.fr/expertise/creer-une-application-iphone).

Pour cette partie, le [Kit iOS](https://devoria.fr/kits/ios) réunit le code de départ de mes apps, abonnements compris, les skills Claude Code de chaque étape et le [Kit Review Apple](https://devoria.fr/kits/review-apple). Le parcours complet est sur la page [formation Claude Code pour créer une app iOS](https://devoria.fr/expertise/formation-claude-code-app-ios).

Tu bloques déjà et tu ne sais pas sur quoi ? Le [diagnostic gratuit](https://devoria.fr/diagnostic) te dit ce qui te freine vraiment et t'envoie ma checklist anti-refus Apple.

## Questions fréquentes

### Peut-on créer une app iPhone avec Claude Code sans savoir coder ?

Oui pour les écrans et la logique simple, si tu relis et testes chaque étape. Non si tu espères ne rien comprendre du tout. Tu dois savoir lire un message d'erreur, lancer une commande et vérifier ce que Claude a modifié. Ça s'apprend vite en construisant.

### Claude Code est-il gratuit ?

Non. Claude Code demande un compte Pro, Max, Team, Enterprise ou Console. L'offre gratuite de claude.ai ne l'inclut pas. L'offre Pro permet de débuter, avec des limites d'usage à surveiller.

### Faut-il un Mac pour créer une app iOS avec Claude Code ?

Non. Tu codes sur n'importe quel ordinateur, tu testes dans Expo Go sur ton iPhone, et EAS compile et envoie l'app sur les serveurs d'Expo. Un Mac reste pratique pour le simulateur, mais il n'est pas obligatoire.

### Claude Code ou Cursor pour une app React Native ?

J'utilise les deux, tous les jours. Claude Code travaille dans le terminal et enchaîne seul modification et tests. Cursor est un éditeur. La méthode compte plus que l'outil : des règles, un écran à la fois, des tests.

### Combien de temps pour publier une première app avec Claude Code ?

Ça dépend de la taille de l'app et de ton temps. Une app à une seule fonction va beaucoup plus vite. La partie la plus imprévisible reste la revue Apple.

### Claude Code peut-il configurer les abonnements in-app ?

Il peut écrire le code du paywall et de RevenueCat. Avec des outils connectés et les autorisations nécessaires, il peut aussi intervenir dans les consoles. Ne déduis jamais de la présence du code que les produits sont configurés : vérifie les identifiants, les prix et les droits après achat, puis teste l'achat et la restauration sur TestFlight. Les [erreurs fréquentes des paywalls iOS](https://devoria.fr/blog/paywall-ios-erreurs-debutant) te donnent les points à contrôler.


## Ton projet

[Kit iOS & Android Devoria](https://devoria.fr/kits/ios) : Le code de départ de mes apps, le parcours jusqu'à l'App Store et Google Play avec les messages à donner à Claude, et tous les kits. Claude part d'une app qui tourne déjà. 99 €, paiement unique. Inclus : Le code de départ de ton app ; Les styles visuels ; Le parcours pas à pas ; Kit Review ; Kit Captures ; Kit ASO ; Mises à jour à vie ; Bonus : la séance 1:1 à moitié prix. Prérequis : pour l'iPhone, un Mac avec Xcode 26 ou plus et un compte Apple Developer (99 $ par an) pour publier. Pour Android, Android Studio sur un Mac, un PC Windows ou Linux, et un compte Google Play Console (25 $, une fois). Et Claude Code (abonnement payant) ou Cursor. Téléchargement immédiat après le paiement.

[Diagnostic gratuit](https://devoria.fr/diagnostic) : quelques questions sur ton projet. Il dit ce qui te bloque vraiment, l'ordre des quatre étapes et le kit qui correspond. En laissant ton e-mail, tu reçois la checklist anti-refus Apple : les points vérifiés avant chaque envoi, tirés des refus reçus par les apps du studio.

[Une heure avec moi](https://devoria.fr/coaching) : On regarde ton app ou ton projet Claude, écran partagé : ce qui bloque, ce que je change en premier, et dans quel ordre. 100 € la séance d'une heure, en visio, paiement en une fois. Sujets : L'audit de ton app ; Ton travail avec Claude ; Ta fiche et ton paywall ; Un refus d'Apple.
