Pour tirer le meilleur parti de Lumi, que vous soyez un utilisateur novice ou expérimenté, il est essentiel d’établir une base solide, de maîtriser l’ingénierie des prompts et d’utiliser efficacement ses divers outils et modes. En suivant ces directives, vous pouvez accélérer votre processus de développement et éviter les pièges courants.

Bonnes pratiques pour les prompts

1. Maîtriser l’ingénierie des prompts pour de meilleurs résultats :

Considérez l’IA comme votre partenaire d’ingénierie ; elle ne sait que ce que vous lui dites explicitement.
  • Clarté et verbosité : Des prompts clairs et verbeux mènent à des résultats de qualité supérieure. Soyez précis, en mentionnant les pages exactes (par exemple, /dashboard) et les comportements attendus. Utilisez un langage naturel pour vos demandes, comme
Je veux que les utilisateurs ayant le rôle Investisseur puissent accéder à ce composant, mais pas les Administrateurs.
  • Aides visuelles : Ajoutez des captures d’écran, surtout lorsque vous décrivez des bogues ou des problèmes d’UX. Cela fournit un contexte visuel que les mots seuls pourraient manquer.
  • Garde-fous et limitations : Dites à l’IA ce qu’elle ne doit pas toucher. Par exemple, vous pourriez donner l’instruction :
Ne pas modifier /shared/Layout.tsx.
  • Répétition pour la rétention : La mémoire de l’IA peut être limitée, alors répétez les instructions importantes dans plusieurs prompts si nécessaire.
  • Décomposer les tâches complexes : Évitez d’essayer de mettre en œuvre plusieurs choses simultanément. Divisez votre travail en plus petits morceaux testables. Utilisez le mode Discussion entre chaque étape pour valider avant de continuer. Un modèle utile pour la décomposition des fonctionnalités comprend :
Créer la nouvelle page, Ajouter la mise en page de l'interface utilisateur, Connecter les données, Ajouter la logique + les cas limites, Tester par rôle.
  • Instructions spécifiques aux rôles : Si votre application prend en charge plusieurs rôles d’utilisateur, définissez toujours à quel rôle le prompt s’applique. Cela aide à prévenir les bogues découlant d’une logique ou de composants partagés. Par exemple :
En tant qu'Investisseur, je veux voir le tableau de bord de l'entreprise, mais je ne devrais pas pouvoir le modifier. Veuillez isoler cette fonctionnalité au rôle d'Investisseur uniquement.

2. Utiliser fréquemment le mode Discussion

Le mode Discussion est votre copilote IA, conçu pour le débogage, le brainstorming et la planification des implémentations sans modifier immédiatement votre code.
  • Quand l’utiliser : Passez en mode Discussion après 2-3 tentatives infructueuses de « Tenter de corriger », lors du débogage d’une logique complexe ou de problèmes de base de données, ou lors de la planification de nouvelles fonctionnalités. Vous pouvez lui demander de
"Suggérer 3 façons d'implémenter X".
  • Recommandation de flux de travail : Certains utilisateurs trouvent efficace de passer 60-70% de leur temps en mode Discussion, ne cliquant sur « Implémenter le plan » qu’une fois entièrement satisfaits. Cette approche améliore la cohérence des résultats et évite les modifications involontaires.
  • Interaction contrôlée : Pour éviter l’exécution de code non désirée, utilisez des prompts comme « Enquêter mais ne pas encore écrire de code » ou « Suggérer 3 façons de résoudre ce problème sans rien changer ». Cela vous permet de garder le contrôle.
  • Sortir des boucles de l’IA : Si l’IA entre dans une « boucle » de correction de code défectueux, passez en mode Discussion, collez une capture d’écran de l’erreur et demandez :
"Veuillez enquêter sur ce problème sans casser d'autres fonctionnalités. Si nécessaire, revenez à la dernière version fonctionnelle et corrigez à partir de là".

3. Le Remix en dernier recours.

Parfois, recommencer prend moins de temps, surtout lorsque l’on est coincé dans un bourbier de développement.
  • Ce que fait le Remix : Le Remix crée une copie propre de votre projet à T=0. Vous pouvez ensuite reconstruire avec des prompts améliorés et des connaissances plus claires, en utilisant votre ancien projet uniquement comme référence.
  • Quand utiliser le Remix : C’est utile si vous êtes coincé dans une boucle de bogues, si vous voulez redémarrer proprement tout en préservant l’historique, ou si vous avez besoin de déconnecter un service de base de données comme Supabase et d’essayer une nouvelle approche.

4. Cultiver la patience et le calme

Le développement avec l’IA peut être imprévisible ; magique à un moment, frustrant le suivant. Les dernières étapes d’une construction prennent souvent le plus de temps.
  • Règle d’or : Prenez votre temps avec les prompts, revérifiez tout et décomposez le travail en petits blocs testables. La précision de vos entrées est directement corrélée à la qualité de vos sorties.

5. Conseils bonus pour un flux de travail amélioré

  • Le modèle « Je suis frustré… » : Utilisez le modèle de prompt « Je suis frustré… » pour aider l’IA à mieux se concentrer.
  • Vérifications post-modification : Après toute modification majeure, revérifiez toujours plusieurs rôles et leurs comportements, en particulier pour la logique conditionnelle.
  • Versions de repli : Stockez des versions stables comme versions de repli pour un débogage rapide.
  • Composants spécifiques aux rôles : Pour éviter les bogues dus à une logique trop générique, demandez à l’IA de
"Créer un composant spécifiquement pour le [rôle X] et ne pas réutiliser de composants partagés à moins qu'ils ne soient clairement délimités".

Bibliothèque de prompts – Stratégies et exemples

La bibliothèque de prompts fournit une collection de modèles de prompts réutilisables et d’exemples pour des scénarios de développement courants avec l’IA de Lumi. Considérez-les comme des modèles à adapter pour vos projets.
  1. Démarrer des projets
  • Quand l’utiliser : Au tout début d’un projet pour aider l’IA à comprendre les exigences de haut niveau et à construire les fondations. Il agit comme votre brief de projet initial.
  • Comment l’utiliser : Décrivez le type d’application, les technologies clés (frontend, backend, services) et les fonctionnalités principales. Indiquez à l’IA par où commencer, généralement la page principale ou une fonctionnalité cruciale.
"J'ai besoin d'une application de gestion de tâches avec : - Stack technique : Frontend Next.js, Tailwind CSS pour le style, Supabase pour l'authentification et la base de données. - Fonctionnalités principales : Création de projets et de tâches, attribution de tâches aux utilisateurs, rappels de dates d'échéance et un aperçu sur le tableau de bord. Commencez par construire la page principale du tableau de bord, contenant : - Un en-tête avec navigation, - Une liste de projets avec leur statut, - et un bouton pour créer un nouveau projet. Fournissez des données fictives pour le moment, et assurez-vous que le design est propre et réactif".
  1. Améliorations du design UI/UX
  • Quand l’utiliser : Pour affiner l’attrait visuel de votre application sans en altérer la fonctionnalité. Cela inclut le polissage de l’interface utilisateur, l’ajustement des mises en page ou l’implémentation d’un style de design spécifique.
  • Comment l’utiliser : Définissez clairement la portée des changements de design et soulignez que la fonctionnalité doit rester intacte. Guidez l’IA sur l’esthétique souhaitée (par exemple, moderne, minimaliste). Abordez les changements multiples un par un et mentionnez toutes les parties de l’interface utilisateur dont la logique ne doit pas être modifiée.
"L'interface utilisateur de l'application doit être améliorée, sans changer aucune fonctionnalité. - Conserver toute la logique existante et la gestion de l'état telles quelles. - Améliorations visuelles : Mettre à jour le style de la page du tableau de bord : utiliser un design de carte moderne pour chaque liste de projet, améliorer la palette de couleurs pour un meilleur contraste, et augmenter le padding pour une mise en page plus épurée. - S'assurer que ces changements ne cassent aucune fonctionnalité ni flux de données. Objectif : des améliorations purement cosmétiques pour un aspect plus soigné, avec l'application se comportant exactement comme avant."
  1. Assurer la réactivité
  • Quand l’utiliser : Lorsque votre application doit adapter sa mise en page à différentes tailles d’écran (mobile, tablette, ordinateur de bureau). Idéal comme passe finale sur les tâches lourdes en interface utilisateur.
  • Comment l’utiliser : Mettez l’accent sur une approche mobile-first et demandez à l’IA d’assurer la réactivité sur les points de rupture standards. Mentionnez les directives spécifiques du framework CSS (par exemple, les points de rupture sm, md, lg, xl de Tailwind) et demandez d’éviter les largeurs fixes.
"Notre application doit être entièrement réactive sur mobile, tablette et ordinateur de bureau. - Suivre une stratégie mobile-first : prioriser la mise en page pour les petits écrans, puis l'ajuster pour les écrans plus grands. - Utiliser les meilleures pratiques UI/UX modernes pour le design réactif. (Pour Tailwind CSS, utiliser les points de rupture standards sm, md, lg, xl – pas de points de rupture personnalisés sauf si nécessaire.) - S'assurer que chaque page (en particulier les pages de tableau de bord et de détail de projet) s'affiche correctement sur un petit écran : les éléments doivent s'empiler ou se redimensionner au besoin, le texte doit rester lisible et aucun contenu ne doit déborder de l'écran. - Ne pas changer le design de base ou la fonctionnalité, juste s'assurer qu'il s'adapte de manière flexible aux différentes tailles d'écran. Après avoir effectué les modifications, veuillez revérifier la mise en page aux dimensions d'un iPhone 12 et à une largeur de bureau typique."
  1. Refactorisation du code
  • Quand l’utiliser : Périodiquement, surtout lorsque le code devient désordonné ou lent. La refactorisation améliore la structure du code, sa lisibilité ou ses performances sans altérer son comportement externe.
  • Comment l’utiliser : Identifiez la portée (fichier, fonctionnalité ou base de code). Pour des fichiers spécifiques, demandez : « Refactoriser ce fichier pour plus de clarté et d’efficacité, mais ne pas altérer sa fonctionnalité ou sa sortie ». Spécifiez les domaines d’intervention comme la réduction de la duplication ou la simplification de la logique. Pour des refactorisations plus importantes, demandez à l’IA de planifier par étapes ou d’auditer le code d’abord.
"Refactoriser le fichier du composant ProjectList, mais conserver son comportement et son interface utilisateur exactement les mêmes. Objectifs : - Améliorer la structure et la lisibilité du code (simplifier les fonctions complexes, les diviser en plus petites si nécessaire). - Supprimer toutes les variables ou importations inutilisées. - S'assurer que le fichier suit les meilleures pratiques et est bien documenté. N'introduisez aucune nouvelle fonctionnalité et ne changez pas la façon dont le composant fonctionne pour l'utilisateur – il s'agit purement d'un nettoyage de code pour la maintenabilité. Si une partie du code n'est pas claire, ajoutez un bref commentaire pour clarification."
  1. Types d’applications et fonctionnalités
Lumi peut aider avec une grande variété de types d’applications et de fonctionnalités. Les exemples incluent :
Boutique e-commerce : Liste de produits, recherche, filtrage, panier, paiement, comptes utilisateurs.
CMS : Tableau de bord d'administration, création/édition/publication de contenu, texte enrichi, téléversements d'images, SEO.
Gestion de projet : Tableaux de tâches, listes, cartes, attribution, dates d'échéance, glisser-déposer.
Fil de médias sociaux : Publications, commentaires, "j'aime", partage, profils utilisateurs, notifications, défilement infini.
Tableau de bord analytique : Divers types de graphiques, filtrage de données, sélection de plage de dates, rapports exportables.
Kit de démarrage d'application SaaS : Authentification des utilisateurs, gestion des abonnements, paramètres, tableau de bord, accès basé sur les rôles.
Interface de chat IA : Historique de conversation, indicateurs de frappe, fils de discussion, feedback.
Outil de génération de contenu IA : Générer du contenu basé sur des entrées, options d'affinage, sauvegarde, exportation.
Composant de recommandation : Basé sur le comportement/préférences de l'utilisateur, feedback, explication des recommandations.
Système de personnalisation : Interface utilisateur personnalisable, recommandations de contenu, contrôle de l'utilisateur sur la personnalisation.
  1. Planification stratégique avec l’IA
  • Quand l’utiliser : Avant de commencer une implémentation complexe en plusieurs étapes, ou lorsque vous avez une grande fonctionnalité qui doit être décomposée. Les prompts de planification vous permettent de définir une approche avant que le code ne soit écrit, économisant des crédits et évitant les erreurs d’orientation.
  • Comment l’utiliser : Demandez à l’IA un plan ou une liste de contrôle. Par exemple, « Décris un plan étape par étape pour X » ou « Avant de coder, liste les étapes que tu suivras pour implémenter Y ». Il est préférable de le faire en mode Discussion pour éviter l’exécution de code.
"Avant d'écrire le moindre code, planifie l'implémentation de la nouvelle fonctionnalité de Notifications. - Liste chaque étape requise pour ajouter des notifications par e-mail lorsqu'une tâche est en retard. - Prends en compte les aspects frontend (changements d'UI, s'il y en a) et backend (création de vérifications planifiées ou de déclencheurs). - Assure-toi que le plan maintient la fonctionnalité actuelle stable – nous ne pouvons rien casser d'existant. - Fournis le plan sous forme de liste ordonnée (1, 2, 3, ...), avec une brève explication de chaque étape. Une fois que tu as défini le plan, fais une pause pour examen. Ne fais aucune modification de code pour l'instant.". L'IA pourrait répondre avec un plan tel que : 1. Ajouter un champ d'horodatage aux tâches. 2. Créer une fonction côté serveur pour vérifier les tâches en retard. 3. Intégrer l'envoi d'e-mails. 4. Mettre à jour l'interface utilisateur pour les bascules de notification. 5. Tester le flux.
En appliquant avec diligence ces bonnes pratiques et en utilisant la bibliothèque de prompts, vous serez bien équipé pour développer des applications sophistiquées de manière efficace et efficiente au sein de Lumi.