Créer un APK gratuit

Backend et comptes

Backend Supabase (à connecter une seule fois)

Connectez votre propre projet Supabase gratuit : base de données cloud, comptes utilisateurs et stockage pour les applications générées par IA

1Ce que vous apporte la connexion à Supabase#

Par défaut, une application générée par IA garde ses données sur le seul téléphone où elle est installée : mode « Offline ». Connectez Supabase et la même application obtient une vraie base de données cloud (Postgres), des comptes utilisateurs et du stockage de fichiers, pour que les données soient partagées entre appareils et utilisateurs.

C'est le principe « apportez le vôtre » : l'application communique avec VOTRE projet Supabase gratuit. AppMint n'héberge rien pour vous et ne facture rien de plus pour cela.

Vous ne concevez pas de tables et n'écrivez pas de SQL. AppMint déduit le schéma de la description de votre application, l'applique et le synchronise à chaque compilation.

2Ce qu'il vous faut d'abord#

Un compte Supabase gratuit, c'est tout. Vous n'avez PAS besoin de créer un projet d'abord ; AppMint peut en créer un pour vous pendant la connexion.

À savoir sur l'offre gratuite :

  • 2 projets par organisation.
  • Les projets se mettent en pause après une semaine sans trafic et se réveillent à la requête suivante.

Si vous avez déjà un projet à réutiliser, c'est possible aussi : AppMint place chaque application dans son propre schéma à l'intérieur, plusieurs applications peuvent donc partager un même projet.

Dans AI Studio, sous « WHERE YOUR APP'S DATA LIVES », touchez la carte « Supabase » (elle indique « Tap to connect »). Choisissez « Sign in with OAuth ».

Votre navigateur ouvre Supabase, vous vous connectez et autorisez AppMint, puis vous revenez automatiquement dans l'application : aucun jeton à copier.

La même chose est disponible depuis l'engrenage ⚙ Paramètres → « BACKEND - SUPABASE » → « 🔗 Connect Supabase (OAuth) ».

4Choisir ou créer le projet#

Juste après l'autorisation, AppMint affiche « Pick a Supabase project » :

  • Choisir un projet existant, ou
  • Touchez « ➕ Create new project… » → choisissez l'organisation → donnez-lui un nom (par ex. appmint-prod) → choisissez une région proche de vos utilisateurs (impossible à changer ensuite) → « Create ». La création prend 1 à 2 minutes.

Quand AppMint crée le projet, il affiche le mot de passe de la base de données UNE SEULE FOIS, car Supabase n'en conserve qu'un hachage. Copiez-le dans un endroit sûr avant de fermer cette fenêtre : vous n'en avez pas besoin pour AppMint, mais il vous servira à connecter tout autre outil.

Vous avez atteint la limite de l'offre gratuite (« Free tier allows 2 projects per organization ») ? Choisissez plutôt un projet existant, ou passez à une offre supérieure dans le tableau de bord Supabase.

5Ou connecter manuellement (auto-hébergé / sans OAuth)#

Paramètres → « BACKEND - SUPABASE » → « MANUAL / SELF-HOSTED » :

  1. Project URL : dans votre tableau de bord Supabase, Project Settings → API. Elle ressemble à https://YOUR-PROJECT-REF.supabase.co
  2. Clé anon : la clé publiable de la même page ; elle commence par « eyJ ». Cette clé est conçue pour être publique : c'est la Row-Level Security qui protège vos données, pas le secret de la clé.
  3. Activez « Enable Supabase backend for generated apps » et touchez « Save Supabase config ».

Cochez « Self-hosted instance » si vous hébergez Supabase vous-même. Le mode manuel ne peut pas déployer automatiquement le schéma sur Cloud : ajoutez un Personal Access Token (étape suivante) si vous le souhaitez.

Project URL   https://abcdefghijkl.supabase.co
anon key      eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...

6Ce qu'AppMint fait à chaque compilation#

Une fois connecté, chaque génération fait le travail de backend pour vous :

  • Applique le schéma écrit par l'IA (tables, index, politiques de Row-Level Security).
  • Exécute les données initiales, si l'application en a besoin.
  • Crée des buckets Storage pour les envois et les images.
  • Déploie les edge functions (paiements, e-mail, webhooks) et ignore celles qui n'ont pas changé.
  • Définit les fournisseurs d'authentification et la Site URL.
  • Exécute un contrôle de sécurité et un contrôle de migration, puis récupère les types TypeScript dans le projet.

Les tables de votre application vivent dans leur propre schéma nommé appmint_<votre application>. Les comptes utilisateurs sont partagés entre toutes les applications du projet : une seule inscription fonctionne partout.

7Vérifier que ça a fonctionné#

Deux vérifications rapides :

  • La carte « Supabase » dans AI Studio affiche maintenant « Connected », et les Paramètres indiquent la référence du projet.
  • Paramètres → « DIAGNOSTICS » → « ⚡ Test Supabase connection » : il indique le succès ou l'erreur exacte.

Après avoir généré une application, ouvrez votre tableau de bord Supabase → Table Editor et faites passer le sélecteur de schéma de « public » à appmint_<votre application> pour voir les tables créées par AppMint.

8Quelles clés sont sûres, et où#

  • Clé anon : sans risque dans les applications générées. La Row-Level Security décide de ce que chaque utilisateur connecté peut lire ou écrire.
  • Clé service_role : ne va JAMAIS dans une application. AppMint la stocke chiffrée sur cet appareil uniquement, et l'utilise pour les buckets Storage et l'application du schéma en auto-hébergement.
  • Personal Access Token (sbp_…) : également limité à l'appareil ; il permet à AppMint de déployer automatiquement le schéma et les edge functions sur Supabase Cloud. Créez-en un sur supabase.com/dashboard/account/tokens avec la portée de projet lecture + écriture.

Les deux clés facultatives se trouvent dans Paramètres → « ADVANCED - DEPLOY CREDENTIALS ».

9Débloque : connexion Google, Stripe, Remote Update#

Plusieurs fonctionnalités nécessitent d'abord une connexion à Supabase, et vous renverront ici tant qu'elle n'est pas faite :

  • « Continue with Google » dans les applications générées.
  • Paiements Stripe (le paiement s'exécute dans une edge function de votre projet).
  • Remote Update : les mises à jour que vous envoyez aux applications installées sont stockées dans votre propre projet Supabase.

Connectez-vous une fois et les trois deviennent disponibles ; inutile de recommencer pour chaque application.

10Supprimer le backend d'une application#

Paramètres → « DANGER ZONE » (visible une fois connecté) :

  • « 📋 List & delete project tables » : parcourez toutes les tables créées par AppMint et supprimez celles dont vous n'avez plus besoin.
  • « 🗑 Delete this whole app backend » : supprime le schéma de cette application, et éventuellement ses buckets Storage et ses edge functions. Vous saisissez DELETE pour confirmer.

Choisissez « Data only » si vous hésitez : les buckets et les edge functions sont partagés par tout le projet, pas par application. Vos comptes utilisateurs ne sont jamais touchés.

Pour vous déconnecter complètement : Paramètres → « ONE-TAP OAUTH » → « 🔒 Disconnect Supabase OAuth ».

11Si quelque chose ne fonctionne pas#

  • « Not connected » après la connexion → l'OAuth est terminé mais aucun projet n'est encore associé. Paramètres → « Choose project ».
  • Un avertissement indiquant que la clé anon n'a pas été récupérée automatiquement → votre autorisation Supabase OAuth n'inclut pas la portée Secrets:Read. Copiez la clé anon depuis Project Settings → API et collez-la dans les Paramètres (étape 5).
  • « Could not list your Supabase organizations » lors de la création d'un projet → créez plutôt le projet dans le tableau de bord Supabase, puis revenez le sélectionner.
  • « Connect Supabase first » dans Remote Update ou Stripe → ce chapitre, étape 3.
  • Les lectures/écritures de données échouent dans une application générée → lancez d'abord « ⚡ Test Supabase connection » ; si le test réussit, demandez à l'IA de corriger la politique Row-Level Security de la table qu'elle indique.

Cette page est générée à partir du guide d'intégration inclus dans l'application elle-même ; elle reflète donc exactement la version actuelle. Lire en Markdown.

Vérifié par rapport au guide publié le 22/10/2026.