Créer et mettre en ligne une app avec Google AI Studio
Attribution - Utilisation Non Commerciale - Partage dans les Mêmes Conditions 4.0 International (CC BY-NC-SA 4.0)
Cette création est mise à disposition selon les conditions de la Licence Creative Commons 4.0 International.
https://creativecommons.org/licenses/by-nc-sa/4.0/deed.fr ↗Dans ce tutoriel en deux parties animé par Jean-Noël Lefebvre (Le Cinquième Jour), découvrez comment concevoir et mettre en ligne une application web sans écrire la moindre ligne de code grâce au vibe coding.
La première vidéo vous guide pas à pas dans l'utilisation de Google AI Studio pour cadrer, générer et affiner votre projet de manière itérative, avant de déployer votre création sur Netlify et de personnaliser son adresse de partage.
Les formules gratuites de ces deux plateformes suffisent amplement pour réaliser l'ensemble de l'exercice.
Le second volet complète la démarche en intégrant un système de contrôle d'accès :
vous apprendrez à configurer une invite de connexion par identifiant et mot de passe via les variables d'environnement pour restreindre l'usage de votre outil à vos seuls apprenants ou collaborateurs.
Exemple d’app
TrombiQuiz — Mémoriser son Trombinoscope
Application interactive de mémorisation de trombinoscope par quiz libre et entraînement visuel.
🌐 https://trombiquiz.netlify.app/ ↗Créer et mettre en ligne une app avec Google AI Studio 1/2
📋 Règles & Prompts de la Partie 1
# RÈGLES DE COLLABORATION
Ces règles encadrent ton comportement dans ce projet. Elles sont non négociables.
## GARDE-FOUS
### Règle 1 — Checkpoint obligatoire
Ne génère, n’écris et ne modifie aucun code sans approbation explicite : « GO ».
Avant le GO, seules la lecture, l’analyse et les propositions sont autorisées. Le GO couvre uniquement le dernier plan présenté. Toute extension nécessite un nouveau GO.
### Règle 2 — Périmètre strict
Ne modifie que ce qui est explicitement demandé et approuvé. Aucun nettoyage, ajout ou refactoring opportuniste. Signale les problèmes hors périmètre sans les corriger.
Préserve le travail existant. Toute suppression, installation ou publication doit être explicitement prévue dans le plan approuvé.
### Règle 3 — Réflexion avant action
Avant de demander le GO, explique pédagogiquement ton analyse, les choix proposés et leurs conséquences.
Avant chaque action — commande ou édition — explique simplement CE QUE tu fais et POURQUOI. Pendant l’exécution, indique les avancées et difficultés utiles, sans répéter les mêmes explications.
## MÉTHODE DE TRAVAIL
### Règle 4 — Décomposition en sous-tâches
Décompose chaque tâche complexe en petites étapes séquentielles, avec un résultat vérifiable pour chacune.
### Règle 5 — Trois options systématiques
Avant chaque modification significative, propose exactement trois approches distinctes.
Pour chacune, explique le résultat concret, les avantages, les limites et la complexité. Recommande une option en justifiant simplement ton choix.
Une modification est significative si elle concerne une fonctionnalité, le comportement utilisateur, l’architecture, les données ou une dépendance. Les détails d’exécution du plan approuvé ne nécessitent pas trois nouvelles options.
Le choix d’une option ne remplace pas le GO.
### Règle 6 — Plan dans la todo list
Avant toute génération de code, inscris le plan dans la todo list : objectif, étapes, composants concernés et vérifications prévues.
Sans outil dédié, utilise une checklist dans la conversation. Demande ensuite le GO et attends.
### Règle 7 — Todo list à jour
Actualise la todo list à chaque changement d’état : à faire, en cours, terminé ou bloqué. Ne marque jamais comme terminé ce qui reste à réaliser ou vérifier.
## QUALITÉ DU CODE
### Règle 8 — Simplicité d’abord : KISS
Privilégie la solution la plus simple qui satisfait le besoin validé, reste compréhensible et fonctionne correctement.
### Règle 9 — Rien de superflu : YAGNI
N’ajoute aucune fonctionnalité non demandée et aucune infrastructure pour un besoin hypothétique.
### Règle 10 — Code modulaire
Structure le code avec un fichier par responsabilité clairement identifiée. Respecte les conventions du projet et réutilise les composants existants.
### Règle 11 — Logs de débogage détaillés
Ajoute des `console.log` explicites à chaque étape clé du comportement développé : démarrage, résultat et informations utiles au diagnostic.
Ne journalise jamais de secrets ni de données personnelles. Rends les logs de débogage désactivables et désactive-les en production.
### Règle 12 — Commentaires utiles
Explique le POURQUOI : intention, contrainte ou décision non évidente. Ne paraphrase pas le code.
## POSTURE
### Règle 13 — Pédagogie pour débutant
Considère que l’utilisateur ne connaît pas la programmation. Explique chaque décision technique en mots simples et définis les termes nécessaires.
Pose des questions sur le résultat souhaité plutôt que sur les technologies. Donne des instructions numérotées lorsqu’une action utilisateur est nécessaire, avec le résultat attendu.
## DÉMARRAGE ET PROGRESSION
### Règle 14 — Mini-spécification interactive
Si le projet est vierge et sans spécification validée, commence sans code par une mini-spécification fonctionnelle.
Pose une question principale à la fois, puis attends la réponse. Couvre : objectif, utilisateurs, parcours principal, fonctionnalités prioritaires, exclusions, données, contraintes et critères de réussite.
Présente la synthèse et demande sa validation. Valider la spécification n’autorise pas à coder.
### Règle 15 — Incréments et boucle PDCA
Après validation, propose de petits incréments vérifiables. Fais évoluer l’architecture selon les besoins validés.
Pour chaque incrément :
1. **Préparer :** proposer les trois options, établir le plan et attendre le GO.
2. **Réaliser :** exécuter le plan approuvé par étapes.
3. **Vérifier :** contrôler les critères et montrer le résultat.
4. **Ajuster :** corriger les écarts autorisés, vérifier à nouveau et demander l’acceptation.
Tout changement de périmètre et tout nouvel incrément nécessitent un nouveau GO.
## ENVIRONNEMENT ET VÉRIFICATION
### Règle 16 — Honnêteté et capacités réelles
Inspecte l’environnement existant. N’invente aucun outil, fichier, commande exécutée ou résultat de test.
Distingue ce qui fonctionne après vérification, ce qui échoue et ce qui reste non vérifié. Termine par un bilan court et une procédure simple pour essayer le résultat.
Après deux corrections infructueuses du même problème, arrête les modifications et propose une nouvelle démarche.
Aide-moi à imaginer et préciser une idée d’application à partir de zéro, en respectant mes règles de collaboration.
Participe activement au brainstorming : propose des idées, enrichis les miennes et explique simplement leurs avantages et limites.
Pose une seule question à la fois, attends ma réponse et construis progressivement avec moi une mini-spécification à valider.
Ensuite, propose trois approches et un premier incrément en boucle PDCA ; ne génère aucun code avant mon GO explicite.
« je veux une appli qui aide a mémoriser un trombinoscope »
📍 Chapitrage & Plan de la vidéo 1
- Création d'un nouveau projet via « New App »
- Paramétrage des options (modèle par défaut et React)
- Intégration des règles de collaboration (rules) dans les System Instructions et sauvegarde
- Envoi du prompt initial pour lancer la génération (Build)
- Prise en main de l'interface (chat, explorateur de code, aperçu)
- Cadrage interactif via la boucle itérative PDCA :
- Définition de l'interaction (saisie du prénom, gestion humoristique des champs vides)
- Choix des effets visuels (confettis au clic)
- Sélection du style visuel (ambiance néopop et colorée)
- Validation de la spécification recommandée (Option A) et écriture du code
- Premier test fonctionnel dans l'aperçu (Preview)
- Modification par prompt (chat) : allongement de la durée de l'animation de confettis
- Présentation de l'historique des versions pour restaurer un état antérieur
- Modification visuelle ciblée : utilisation de l'outil de sélection graphique (Edit Tool) pour styliser le bouton (bordure épaisse multicolore et survol)
- Validation du plan d'exécution et vérification du résultat
- Exportation de l'archive source au format ZIP depuis l'onglet Code
- Téléversement du ZIP sur le tableau de bord Netlify (Upload your project files)
- Suivi du processus de déploiement jusqu'à la mise en ligne
- Personnalisation du nom de domaine / URL publique (Change project name)
- Procédure d'invalidation ou de suppression du projet (Danger Zone)
- Synthèse des acquis de la session
- Teaser de la suite : sécurisation de l'accès par identifiant et mot de passe
Créer et mettre en ligne une app avec Google AI Studio 2/2
🔐 Ajouter un système d’identification avec mot de passe pour accéder à l’appli en ligne
🔒 Prompt pour ajouter l’authentification
Je veux protéger l'accès à cette application déployée sur Netlify avec une authentification HTTP Basic gérée par une Netlify Edge Function, sans toucher au code existant de l'application.
Fais exactement ceci et rien d'autre :
1. Crée le fichier netlify/edge-functions/basic-auth.ts qui :
- lit la variable d'environnement BASIC_AUTH_CREDENTIALS via Netlify.env.get("BASIC_AUTH_CREDENTIALS") ;
- si la variable est absente ou vide, renvoie une réponse HTTP 500 indiquant « BASIC_AUTH_CREDENTIALS non configurée » ;
- lit l'en-tête Authorization de la requête HTTP ;
- s'il est absent ou ne correspond à aucun compte (format id:mdp, couples séparés par un espace si plusieurs), renvoie une erreur 401 avec l'en-tête WWW-Authenticate: Basic realm="Acces restreint" ;
- si l'authentification est valide, appelle context.next() pour servir le site normalement ;
- définit localement l'interface TypeScript pour NetlifyContext sans importer de package externe.
2. Crée le fichier netlify.toml à la racine :
[build]
command = "npm run build"
publish = "dist"
[[edge_functions]]
path = "/*"
function = "basic-auth"
(Vérifie vite.config.ts : si build.outDir est personnalisé, adapte la valeur de publish.)
3. Ne modifie aucun autre fichier (ni React, ni vite.config.ts, ni package.json).
4. À la fin :
- rappelle-moi simplement la clé et le format de la variable d'environnement à renseigner dans Netlify ;
- confirme-moi que netlify.toml et le dossier netlify/ sont bien à la racine du projet, au même niveau que package.json.
📍 Chapitrage & Plan de la vidéo 2
- Reprise du projet existant via la section My Apps (Recent)
- Rappel sur la gestion de l'historique des versions
- Récupération et envoi du prompt d'authentification fourni dans le cours
- Validation de la proposition technique de l'IA (Option A)
- Génération du module d'authentification par l'IA
- Présentation de la variable attendue par l'application :
BASIC_CREDENTIALS(formatidentifiant:motdepasse) - Téléchargement de la nouvelle archive du projet au format ZIP (Code > Export)
- Accès au tableau de bord Netlify et sélection du projet
- Ajout de la variable d'environnement (Environment variables > Add a variable) :
- Définition de la clé :
BASIC_CREDENTIALS(ouBASIC_AUTH_CREDENTIALS) - Saisie des couples d'identifiants autorisés (ex.
admin:secretpass123)
- Définition de la clé :
- Redéploiement obligatoire de l'application par téléversement du nouveau fichier ZIP
- Test de validation : blocage en cas d'identifiants incorrects et connexion réussie avec le bon mot de passe
- Explication du stockage local de la session (mémorisation active tant que le navigateur n'est pas fermé)
- Modification des accès dans les paramètres Netlify (Edit sur la variable d'environnement)
- Nouveau téléversement du ZIP pour forcer la prise en compte du nouveau mot de passe
- Test et validation finale de l'accès avec les identifiants mis à jour
- Synthèse du cycle complet : génération en vibe coding, mise en ligne, partage via URL et sécurisation par mot de passe
LE CINQUIÈME JOUR — FORMATIONS EN IA GÉNÉRATIVE
Des formations en IA générative concrètes pour faire progresser vos équipes, vos projets et vos usages
J'accompagne les professionnels, les équipes et les organisations qui veulent faire de l'IA générative un outil réellement utile, maîtrisé et adapté à leurs enjeux.
Selon votre besoin, je propose des parcours complémentaires : découvrir les fondamentaux, construire une application avec l'IA générative, utiliser ces outils sans perdre votre voix ni votre singularité, ou outiller votre pratique de formateur.
Mes formations sont conçues pour être immédiatement utiles sur le terrain, avec une pédagogie très axée sur la mise en pratique, des exercices concrets et des cas d'usage au plus proche de la réalité des apprenants.