form0form0

Un ecosistema di moduli aperto, versatilee pensato per l'IA

Logica per moduli e raccolta dati basata su schema: validazione, visibilità e calcoli per web, CLI, mobile e agenti IA.

npm install -g form0-cli
Provalo!Vedi la documentazione

Playground live

Un vero ambiente form0 nel tuo browser

Usa la CLI interattiva, modifica i file, avvia progetti web ed Expo e prova SQLite o PostgreSQL in un ambiente usa e getta.

{

"name": "Site Inspection",

"elements": [

{ "type": "TextField", "data_name": "site", "required": true },

{ "type": "NumericField", "data_name": "units" },

{ "type": "NumericField", "data_name": "unit_cost" },

{ "type": "CalculatedField", "data_name": "total",

"calculate": "SETRESULT(ROUND($units * $unit_cost, 2));" },

{ "type": "TextField", "data_name": "sign_off",

"visible_conditions": { "field_id": "total", "operator": "greater_than", "value": 5000 } }

]

}

Terminal

form0@playground:~/quickstart$ form0 test

✓ schema valid · 5 fields · 1 calculated · 1 conditional

form0@playground:~/quickstart$ ▌

Anteprima dell'editor e del terminale del playground form0

Anteprima del playground

L'ambiente interattivo non è ancora abilitato. Puoi comunque installare form0 localmente qui sopra.

In evidenza

Uno sguardo più da vicino alla modifica assistita dall'IA e ai form offline su mobile.

Modifica degli schemi assistita dall'IA nella CLI

Anteprima

Descrivi a parole una modifica e la CLI propone i cambiamenti allo schema. form0-core valida ogni proposta prima che tu la veda, e nulla viene scritto su disco finché non la applichi. Usa la tua API key o il tuo abbonamento, oppure un modello locale tramite Ollama.

Documentazione sulla creazione con IA

Form offline su mobile

Lo stesso schema gira in React Native. Calcoli, visibilità e validazione vengono valutati sul dispositivo, quindi i form funzionano anche senza connessione. È la tua app a salvare i record e a decidere quando sincronizzarli.

Documentazione sull'integrazione mobile con React Native

Scopri

Per chi è form0, cosa fa, come ci si costruisce e perché è fatto così.

Chi?

form0 è pensato per sviluppatori e chiunque sia a proprio agio con CLI e editor di codice. Hai il pieno controllo sulla logica, lo schema e l'integrazione dei tuoi moduli.

Cosa?

Un motore basato su schema per moduli e raccolta dati che gestisce calcoli, visibilità, validazione ed eventi. Core agnostico con componenti UI per React e React Native.

  • Definizione dello schema basata su JSON
  • Funziona ovunque: Node.js, browser, mobile
  • Componenti UI tramite una libreria dedicata
  • Nessuna autenticazione, nessuna persistenza: sei tu a decidere

Come?

Diversi modi per creare e modificare il tuo schema di modulo:

  • Modifica lo schema JSON manualmente
  • Importa da file CSV
  • CLI: aggiungi/modifica/rimuovi campi manualmente
  • CLI: modifica assistita dall'IAAnteprima
  • Interfaccia drag-and-drop in reform

Perché?

Smetti di riscrivere la stessa logica dei moduli in ogni app. Calcoli, visibilità e validazione risiedono in un unico schema JSON invece di essere dispersi tra i componenti, quindi sono più facili da testare e modificare. Lo stesso schema alimenta app web e mobile senza duplicare codice, e integri form0 in qualsiasi progetto esistente senza vincoli di framework.

Per Team e Organizzazioni

  • Ispezioni infrastrutturali (edifici, servizi, attrezzature)
  • Indagini ambientali e audit
  • App per forza lavoro mobile con supporto offline
  • Moduli di conformità con logica condizionale complessa
  • Sondaggi e questionari online
  • E molto altro...

Per Progetti Personali

  • Gestione collezioni (libri, dischi, oggetti da collezione)
  • App per dati sul campo (osservazione natura, diari di viaggio)
  • Tracciamento inventario e asset
  • Acquisizione dati strutturati in movimento
  • Sondaggi e questionari online
  • E molto altro...

FAQ

Quello che ci si chiede prima di installarlo.

Risolvono livelli diversi dello stesso problema, quindi la risposta dipende da quale strumento stai confrontando.

React Hook Form e Formik gestiscono lo stato del form dentro una singola app React. La logica condizionale, la validazione e i calcoli li scrivi comunque a mano, nei componenti. form0-core sposta quella logica in uno schema JSON e la esegue ovunque: Node, browser, React Native, CLI. Non è un concorrente, è il livello sottostante, e i due possono convivere.

form.io è il parente più stretto, un motore guidato da JSON con un builder e un renderer propri. La differenza sta in quanto controllo mantieni. form0-core è solo il motore, senza renderer e senza un modello dati imposto. form0-react e form0-react-native ti danno componenti pronti quando li vuoi, e ognuno di essi può essere sostituito o ignorato, così la logica del form si adatta al design system che hai già, e non il contrario.

Sostieni il progetto

form0 è gratuito e con licenza MIT. Migliora quando qualcuno lo usa, segnala ciò che non funziona e dà una mano.

Contribuisci

Apri una issue quando qualcosa non funziona, oppure manda una pull request. Una segnalazione che spiega come riprodurre il problema vale quanto il codice.

Sponsorizza

Le sponsorizzazioni coprono i costi di gestione di un progetto open source: infrastruttura, documentazione e testing. GitHub Sponsors e Open Collective Europe vanno bene entrambi, sia per privati che per aziende: usa quello che ti è più comodo.

Fai girare la voce

Metti una stella ai repository, racconta cosa hai costruito, o parlane a chi sta lottando con la logica dei form. È la visibilità che porta il prossimo contributore.