Open-source, framework-agnostic,AI-ready form ecosystem
Schema-driven logic, validation, visibility, and calculations for web, CLI, mobile, and AI agents.
npm install -g form0-cliLive playground
A real form0 workspace, in your browser
Use the interactive CLI, edit files, launch web and Expo projects, and try SQLite or PostgreSQL in a disposable environment.
{
"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$ ▌
Playground preview
The live environment is not enabled yet. You can still install form0 locally above.
Discover
Who form0 is for, what it does, how you build with it, and why it is shaped this way.
Who?
form0 is built for developers and anyone comfortable using a CLI and code editor. You have full control over your form logic, schema, and integration.
What?
A schema-driven form engine that handles calculations, visibility, validation, and events. Framework-agnostic core with UI components for React and React Native.
- JSON-based schema definition
- Runs anywhere: Node.js, browsers, mobile
- UI components via a dedicated library
- No auth, no data persistence: you own it
How?
Multiple ways to build and edit your form schema:
- Edit JSON schema manually
- Import from CSV file
- CLI: manually add/edit/remove fields
- CLI: AI-assisted editingComing soon
- Drag-and-drop UI in reform
Why?
One JSON schema drives both web and mobile apps, with no code duplication. Logic like calculations and visibility lives in the schema, not scattered across components. Embed form0 into any existing project with zero framework lock-in.
For Teams & Organizations
- Infrastructure inspections (buildings, utilities, equipment)
- Environmental surveys and audits
- Mobile workforce apps with offline support
- Compliance forms with complex conditional logic
- Online surveys and questionnaires
- And more...
For Personal Projects
- Collection management (books, records, collectibles)
- Field data apps (nature observation, travel logs)
- Inventory and asset tracking
- Structured data capture on the go
- Online surveys and questionnaires
- And more...
FAQ
What people ask before installing.
They solve different layers of the problem, so the answer depends on which one you are comparing.
React Hook Form and Formik manage form state inside a single React app. You still write the conditional logic, validation, and calculations by hand, in components. form0-core moves that logic into a JSON schema and runs it anywhere: Node, browser, React Native, CLI. It is not a competitor to them, it is the layer underneath, and the two can coexist.
form.io is the closest relative, a JSON-driven engine with a builder and a renderer of its own. The difference is how much you keep control of. form0-core is only the engine, with no renderer and no data model imposed on you. form0-react and form0-react-native give you ready-made components when you want them, and every one of them can be replaced or ignored, so the form logic fits the design system you already have instead of the other way around.
Support the project
form0 is free and MIT licensed. It gets better when people use it, report what breaks, and pitch in.
Contribute
Open an issue when something does not work, or send a pull request. A bug report that comes with a way to reproduce it is worth as much as code.
Sponsor
Sponsorship covers the running costs of an open-source project: infrastructure, documentation, and testing.
Sponsorship is not open yet — it will be shortly. In the meantime, a star or a pull request helps just as much.
Spread the word
Star the repositories, write about what you built, or tell someone who is wrestling with form logic. Visibility is what brings the next contributor.