# Écosystème de formulaires open-source, indépendant et prêt pour l'IA

> Logique, validation, visibilité et calculs pilotés par schéma pour le web, le CLI, le mobile et les agents IA.

Essayer!: https://form0.dev/#playground

Voir la doc: https://docs.form0.dev

## Découvrez

À qui form0 s'adresse, ce qu'il fait, comment on construit avec, et pourquoi il est fait ainsi.

### Qui ?

form0 est conçu pour les développeurs et toute personne à l'aise avec un CLI et un éditeur de code. Vous avez un contrôle total sur la logique, le schéma et l'intégration de vos formulaires.

### Quoi ?

Un moteur de formulaires piloté par schéma qui gère les calculs, la visibilité, la validation et les événements. Noyau agnostique avec des composants UI pour React et React Native.

- Définition de schéma basée sur JSON
- Fonctionne partout : Node.js, navigateurs, mobile
- Composants UI via une bibliothèque dédiée
- Pas d'authentification, pas de persistance : vous contrôlez tout

### Comment ?

Plusieurs façons de créer et modifier votre schéma de formulaire :

- Modifier le schéma JSON manuellement
- Importer depuis un fichier CSV
- CLI : ajouter/modifier/supprimer des champs manuellement
- CLI : édition assistée par IA (Bientôt)
- Interface drag-and-drop dans reform — https://reformapp.io

### Pourquoi ?

Un seul schéma JSON alimente à la fois les applications web et mobiles, sans duplication de code. La logique comme les calculs et la visibilité réside dans le schéma, pas éparpillée dans les composants. Intégrez form0 dans n'importe quel projet existant sans dépendance framework.

**Pour les Équipes et Organisations**

- Inspections d'infrastructures (bâtiments, services publics, équipements)
- Enquêtes environnementales et audits
- Applications de terrain avec support hors ligne
- Formulaires de conformité avec logique conditionnelle complexe
- Enquêtes et questionnaires en ligne
- Et plus encore...

**Pour les Projets Personnels**

- Gestion de collections (livres, disques, objets de collection)
- Applications de données terrain (observation nature, carnets de voyage)
- Suivi d'inventaire et d'actifs
- Capture de données structurées en déplacement
- Enquêtes et questionnaires en ligne
- Et plus encore...

## FAQ

Ce qu'on demande avant d'installer.

### En quoi form0 diffère-t-il de React Hook Form, Formik ou form.io ?

Ils traitent des couches différentes du même problème, la réponse dépend donc de l'outil auquel vous comparez.

React Hook Form et Formik gèrent l'état du formulaire à l'intérieur d'une seule application React. La logique conditionnelle, la validation et les calculs, vous les écrivez toujours à la main, dans des composants. form0-core déplace cette logique dans un schéma JSON et l'exécute partout : Node, navigateur, React Native, CLI. Ce n'est pas un concurrent, c'est la couche du dessous, et les deux peuvent coexister.

form.io est le parent le plus proche, un moteur piloté par JSON avec son propre builder et son propre moteur de rendu. La différence tient à ce que vous gardez sous votre contrôle. form0-core n'est que le moteur, sans rendu et sans modèle de données imposé. form0-react et form0-react-native vous donnent des composants prêts à l'emploi quand vous en voulez, et chacun d'eux peut être remplacé ou ignoré, de sorte que la logique du formulaire s'adapte au design system que vous avez déjà, et non l'inverse.

### form0, ODK ou KoboToolbox ?

ODK et KoboToolbox sont des systèmes complets de collecte de données : un standard de formulaire (XLSForm), une application mobile et un serveur. Ils font bien leur travail et, s'il vous faut une pile prête à l'emploi pour des enquêtes de terrain, vous devriez sans doute les utiliser. La contrepartie est que vous adoptez leur application, leur format et leur backend.

form0 s'adresse aux équipes qui construisent leur propre produit et veulent la logique de formulaire sans hériter d'une plateforme : votre interface, votre base de données, votre cycle de publication. Si vous voulez une application clé en main, utilisez ODK ou KoboToolbox. Si vous voulez un moteur de formulaire dans l'application que vous construisez déjà, utilisez form0, et si vous préférez ne rien héberger vous-même, reform est l'option hébergée.

### form0 est-il prêt à l'emploi ?

Il est en développement actif. Le format de schéma est stable en pratique, les types de champ, les opérateurs et la syntaxe des conditions se sont stabilisés, mais de petits changements et de nouvelles fonctionnalités sont encore prévus. Figez vos versions et lisez les notes de version avant de mettre à jour. Commencez à construire avec dès maintenant, une version formellement stable arrive.

### Quel est le lien entre form0 et reform ? Est-ce de l'open-core ?

Non. form0 est sous licence MIT et le restera. Le moteur est complet dans les paquets open source : logique, validation, visibilité, calculs, événements et connecteurs. Rien n'est retenu pour vous pousser vers une offre payante. L'édition de schéma assistée par IA est également en cours et arrivera dans la CLI open source, avec votre propre clé d'API.

reform est une plateforme commerciale bâtie sur form0 : hébergement, constructeur de schéma en glisser-déposer, formulaires publics, outils d'analyse et d'export de données. Elle comprend aussi une application mobile qui continue de fonctionner hors ligne et se synchronise au retour de la connexion. C'est l'option pour qui préfère ne rien héberger soi-même. Si vous n'en voulez jamais, form0 s'utilise pleinement sans.

En parrainant form0, vous aidez à financer l'infrastructure, la documentation, les tests et les ressources communautaires du projet open source.

### Où vont les données de mes formulaires ?

Nulle part, sauf si vous les envoyez quelque part. L'écosystème form0 n'a ni comptes, ni télémétrie, ni backend hébergé. form0-core évalue un schéma et renvoie un état. La persistance est optionnelle et passe par des connecteurs : PostgreSQL et SQLite aujourd'hui, d'autres plus tard, ou écrivez le vôtre en suivant l'interface de connecteur. Vous choisissez la destination et les données vous appartiennent.

### Puis-je utiliser mes propres composants et mon design system ?

Oui, c'est tout l'intérêt de la séparation. form0-core n'a aucune interface. form0-react et form0-react-native sont les liaisons disponibles aujourd'hui, et elles fournissent des composants pour les types de champ courants si vous voulez démarrer vite. Vous pouvez remplacer n'importe lequel d'entre eux, ou ignorer complètement les liaisons et piloter le moteur depuis vos propres composants. Des liaisons pour d'autres frameworks pourront suivre, et rien ne vous empêche d'écrire la vôtre en attendant.

Le moteur vous dit ce qui est visible, obligatoire, en lecture seule et invalide. L'apparence vous appartient.

### Est-ce que ça marche vraiment sur React Native, et hors ligne ?

Oui. form0-core n'a aucune dépendance et n'utilise aucun module natif de Node, il tourne donc tel quel dans un runtime JavaScript mobile, et form0-react-native l'enveloppe pour Expo et React Native bare. L'évaluation est entièrement locale et synchrone, un formulaire fonctionne donc sans aucun réseau. Synchroniser les enregistrements collectés au retour de la connectivité est le travail de votre application, pas celui du moteur.

### Que veut dire « AI-ready » ?

Deux choses. D'abord, un schéma form0 est du JSON simple à la structure documentée, un modèle peut donc le lire, l'écrire ou le modifier sans toucher au code de votre application. Cela rend directe la génération de formulaires pilotée par l'IA, et c'est la base de l'édition assistée par IA à venir dans la CLI. Ce travail est en cours et n'est pas encore disponible.

Ensuite, les champs peuvent porter des attributs qui donnent au modèle le contexte de leur signification, afin qu'un assistant puisse raisonner sur un formulaire au lieu de deviner d'après les libellés. Cela ouvre la voie au remplissage conversationnel, compléter un formulaire en lui parlant plutôt qu'en le parcourant du doigt. Le moteur rend cela possible, l'expérience vous revient, et une preuve de concept est prévue pour form0-react-native.

### Suis-je obligé d'utiliser la CLI ?

Non. form0-core est un paquet npm ordinaire : vous l'installez, vous lui passez un schéma, vous appelez eval(). La CLI existe parce qu'elle rend la construction et le test des schémas bien plus rapides, avec aperçu en direct, surveillance des fichiers, valeurs de test et connecteurs. La commande d'installation de cette page commence par la CLI parce que c'est la meilleure façon de démarrer, pas parce que quoi que ce soit en dépend.

### Est-ce la même chose que d'autres produits appelés form0 ?

Non. Ce form0 est le moteur de formulaires open-source publié par paqu.io, distribué sur npm sous les noms form0-core, form0-cli, form0-react, form0-react-native et les connecteurs, avec le code source sur github.com/paqu-io.

Au moins un produit sans rapport porte le même nom, dont un créateur de formulaires hébergé et axé sur la confidentialité, destiné aux flux d'automatisation n8n. Il n'a aucun lien avec ce projet : ici, form0 est une bibliothèque pour développeurs que vous installez et exécutez vous-même, sans service hébergé, sans comptes et sans intégrations webhook intégrées. Si vous arrivez de form0.dev ou docs.form0.dev, ou si vous avez installé l'un des paquets ci-dessus, vous êtes au bon endroit.
