Guides

Comment créer un générateur de formulaires

Un générateur de formulaires permet aux utilisateurs de concevoir leurs propres formulaires — choisir des champs, définir des règles, publier un lien — puis collecte les réponses. Concrètement, il repose sur trois éléments : une définition de formulaire stockée sous forme de données, un moteur d'affichage qui transforme cette définition en formulaire fonctionnel, et un espace de stockage des réponses avec notifications et export. Avant d'en construire un, vérifiez que vous en avez vraiment besoin : si vous voulez simplement un formulaire de contact ou de candidature, créez ce formulaire directement et passez le générateur.

Avez-vous vraiment besoin d'un générateur ?

Votre situationCe qu'il faut créer
Un ou deux formulaires qui changent rarementLes formulaires eux-mêmes. Voir comment ajouter un formulaire de contact.
Beaucoup de formulaires, créés par des non-développeurs de votre équipeUn générateur de formulaires interne
Les formulaires font partie de votre produit (ce sont vos clients qui les créent)Un générateur avec comptes, limites et intégration
Vous voulez surtout des résultats d'enquêtes et des graphiquesUne application de sondage

Un générateur est un projet bien plus lourd qu'un formulaire, car chaque type de champ doit fonctionner dans l'éditeur, le formulaire public, la validation, le stockage, les notifications et l'export.

Ce dont un générateur de formulaires a besoin

Définitions de formulaires

Stockez chaque formulaire sous forme de liste de champs, en données structurées (du JSON dans une colonne Postgres fonctionne bien). Un champ peut ressembler à ceci :

  • id — un identifiant stable qui ne change jamais, même si le libellé change
  • type — texte, e-mail, nombre, texte long, liste de choix, case à cocher, date, fichier
  • libellé et texte d'aide
  • obligatoire, min / max, types de fichiers autorisés
  • options pour les listes de choix
  • ordre, et éventuellement une condition (« n'afficher que si le champ X vaut Y »)

L'éditeur modifie cette liste ; le formulaire public la lit. C'est toute l'astuce : aucun nouveau code pour chaque formulaire.

Réponses

  • Réponses — formulaire, version du formulaire, date d'envoi, réponses indexées par identifiant de champ, statut (nouvelle, lue, archivée).
  • Fichiers — les fichiers envoyés doivent être stockés dans un espace de fichiers, la réponse ne contenant qu'une référence, jamais à l'intérieur de la ligne de base de données.

Pages

  • Liste des formulaires avec le nombre de réponses.
  • Éditeur — ajouter, réordonner et configurer les champs, avec un aperçu en direct à côté.
  • Paramètres — message de confirmation ou redirection, e-mails de notification, dates d'ouverture et de fermeture, nombre maximum de réponses.
  • Formulaire public à son propre lien, et une version intégrable pour d'autres sites web.
  • Tableau des réponses avec recherche, statut, vue détaillée et export CSV.

Décisions et compromis

Gestion des versions. Quelqu'un finira par renommer « Téléphone » en « Numéro de portable » après 200 réponses. Si les réponses sont enregistrées par identifiant de champ et que chaque réponse mentionne la version du formulaire, les anciennes réponses continuent de s'afficher correctement. Sans cela, vos données se brouillent discrètement.

La validation s'effectue deux fois. Vérifiez les champs dans le navigateur pour un retour rapide, puis à nouveau sur le serveur, car n'importe qui peut envoyer des données directement à votre point d'entrée. C'est la vérification côté serveur qui compte.

Envois de fichiers. Ils entraînent des coûts de stockage, des limites de taille, des contrôles de type de fichier et des questions de confidentialité (CV, pièces d'identité, formulaires médicaux). Limitez les types et les tailles, et rendez les fichiers envoyés privés par défaut, accessibles uniquement aux propriétaires du formulaire. Voir comment ajouter l'envoi de fichiers à votre application.

Notifications. « M'envoyer un e-mail quand quelqu'un répond » est attendu. Cela nécessite un prestataire d'e-mails et une clé API ; voir comment envoyer des e-mails depuis votre application.

Spam. Un formulaire public sera repéré par des robots. Utilisez un champ piège (caché pour les personnes, rempli par les robots), des limites de requêtes par adresse IP, une validation côté serveur et, si besoin, un service CAPTCHA.

Intégration. Une intégration par iframe est le moyen le plus simple et le plus sûr de placer un formulaire sur le site de quelqu'un d'autre. Une intégration par script paraît plus native, mais elle est plus difficile à construire et à sécuriser.

Logique conditionnelle. « Afficher ce champ uniquement si… » est très demandé et multiplie les tests. Ajoutez-le une fois les bases solides.

Un premier prompt qui fonctionne

Crée une application web de générateur de formulaires pour mon équipe. Les utilisateurs connectés créent des formulaires dans un éditeur avec un aperçu en direct. Types de champs : texte court, texte long, e-mail, nombre, date, liste de choix unique, cases à cocher et envoi de fichier. Chaque champ a un identifiant stable, un libellé, un texte d'aide, un indicateur obligatoire et des règles propres à son type (min/max, options, types de fichiers autorisés et une limite de taille de 10 Mo). Stockez la définition du formulaire en JSON avec un numéro de version qui augmente à chaque publication. Chaque formulaire reçoit un lien public et un code d'intégration par iframe. Validez les réponses côté serveur par rapport à la version publiée, enregistrez les réponses indexées par identifiant de champ avec la version du formulaire, et placez les fichiers envoyés dans un stockage de fichiers privé. Ajoutez un champ piège caché et une limite de requêtes par adresse IP. Les propriétaires du formulaire voient un tableau des réponses avec le statut (nouvelle, lue, archivée), une vue détaillée et un export CSV. Stockez tout dans une base de données. Laissez la logique conditionnelle et les notifications par e-mail pour plus tard.

Étapes de création

  1. Éditeur et définition. Créez un formulaire avec chaque type de champ et examinez le JSON enregistré avec l'agent. Est-il propre et stable ?
  2. Formulaire public. Remplissez-le sur un téléphone. Vérifiez les messages de validation et l'écran de confirmation.
  3. Validation côté serveur. Demandez à l'agent d'envoyer directement au serveur une réponse qui ne respecte pas les règles, en contournant la page. Elle doit être rejetée.
  4. Gestion des versions. Renommez et réordonnez des champs après quelques réponses. Les anciennes réponses doivent toujours afficher les bonnes valeurs.
  5. Envois de fichiers. Essayez un fichier trop volumineux et un fichier d'un mauvais type. Vérifiez qu'un inconnu ne peut pas ouvrir un fichier envoyé en devinant son lien.
  6. Tableau des réponses et export. Vérifiez l'export CSV avec des virgules, des sauts de ligne et des caractères accentués dans les réponses.
  7. Notifications, intégrations, logique. Ajoutez-les une à une.

Erreurs courantes

  • Enregistrer les réponses par libellé. Les libellés changent. Utilisez des identifiants de champ stables.
  • Validation uniquement dans le navigateur. C'est un confort, pas une protection.
  • Fichiers envoyés publics. Les formulaires collectent souvent des documents que les personnes ne voudraient pas voir exposés.
  • Aucune protection anti-spam. Un formulaire public peut se remplir de déchets en quelques jours.
  • Construire un générateur pour un seul formulaire. Créez simplement le formulaire.
  • Réponses illimitées sur un produit public. Si vos clients créent des formulaires, fixez des limites par offre, sinon un formulaire populaire peut faire exploser votre facture d'hébergement.

Quand un produit clé en main est le meilleur choix

Les outils de formulaires hébergés sont excellents et peu coûteux pour la plupart des besoins. Ils ont déjà résolu l'intégration, le spam, les paiements, les connexions avec d'autres outils et l'accessibilité sur des dizaines de types de champs. Si votre équipe a simplement besoin de formulaires, utilisez-en un — voir alternatives à Typeform et alternatives à Google Forms.

Créez le vôtre lorsque les réponses doivent vivre à côté de vos propres données (alimenter un CRM ou un portail client que vous exploitez), lorsque vous avez besoin de workflows après l'envoi que les outils ne savent pas faire, lorsque l'emplacement ou la propriété des données est une exigence, ou lorsque les formulaires sont une fonctionnalité d'un produit que vous vendez.

Créer le générateur avec Mythex

Sur Mythex, vous décrivez le générateur dans le chat et vous testez l'éditeur et le formulaire public côte à côte dans l'aperçu en direct. Mythex ajoute une base de données dédiée aux définitions de formulaires et aux réponses, et active automatiquement le stockage de fichiers lorsque votre application a besoin d'envois de fichiers (limité à 1 Go sur l'offre Free). Les e-mails de notification passent par un prestataire que vous connectez avec votre propre clé. Publiez l'application sur un lien mythex.ai, ou sur votre propre domaine avec l'offre Pro, et les liens des formulaires publics fonctionneront à partir de là.

Questions

Comment un générateur de formulaires stocke-t-il les formulaires ?

En général sous forme de définition : une liste de champs, chacun avec un type, un libellé, des règles de validation et un ordre, enregistrée comme données structurées, par exemple en JSON. La même définition alimente à la fois l'éditeur et le formulaire public, donc ajouter un champ ne demande pas de nouveau code.

Comment faut-il enregistrer les réponses aux formulaires ?

Enregistrez chaque réponse avec une référence à la version du formulaire utilisée, et les réponses indexées par l'identifiant du champ. Ainsi, renommer ou réordonner un champ plus tard ne casse pas les anciennes réponses.

Comment empêcher le spam sur un formulaire public ?

Combinez un champ piège caché, une limitation du nombre de requêtes par adresse IP, une validation côté serveur et, si le spam persiste, un service CAPTCHA. Ne vous fiez jamais uniquement aux vérifications effectuées dans le navigateur.

Faut-il un générateur complet ou simplement un formulaire ?

Si vous n'avez besoin que d'un ou deux formulaires fixes, créez-les directement : c'est beaucoup plus simple. Un générateur se justifie lorsque des personnes non techniques doivent créer et modifier de nombreux formulaires sans passer par un développeur.

Mythex · Pricing · Créez tout avec l'IA · Modèles de sites et d'applications · Mythex comparé · Glossaire de la création d'applications avec l'IA · Outils gratuits pour créer des applications avec l'IA · English

English አማርኛ العربية Български বাংলা Bosanski Català Čeština Dansk Deutsch Ελληνικά Español Español (España) Eesti فارسی Suomi Français (Canada) ગુજરાતી हिन्दी Hrvatski Magyar Հայերեն Bahasa Indonesia Íslenska Italiano 日本語 ქართული Қазақ тілі ಕನ್ನಡ 한국어 Lietuvių Latviešu Македонски മലയാളം Монгол मराठी Bahasa Melayu မြန်မာ Norsk bokmål Nederlands ਪੰਜਾਬੀ Polski Português (Brasil) Português (Portugal) Română Русский Slovenčina Slovenščina Soomaali Shqip Srpski Svenska Kiswahili தமிழ் తెలుగు ไทย Tagalog Türkçe Українська اردو Tiếng Việt 简体中文 繁體中文(香港) 繁體中文(台灣)