form0
Open-source form and data-collection engine with JSON schemas, validation, visibility rules, calculations, and React Native support.

form0 is an open-source form ecosystem for developers who want to define form logic once and use it across multiple platforms. It uses a shared JSON schema to handle validation, conditional visibility, calculations, and events without tying the underlying logic to a specific framework or renderer.
The platform is designed for developers who want control over form behavior, schema, integrations, and data rather than relying on a hosted form builder. The same form definition can be used across Node.js, browsers, mobile applications, and CLI workflows.
Key Features
JSON-Based Form Schema
Define fields, rules, and form behavior through a structured JSON schema.
- JSON-based form definitions
- Field configuration
- Conditional visibility
- Validation rules
- Calculations
- Event handling
- Centralized form logic
Framework-Agnostic Core
Keep form behavior separate from the interface that renders it.
- Runs in Node.js
- Browser support
- Mobile support
- Independent of a specific UI framework
- Reusable form logic across applications
React & React Native Bindings
Build form interfaces using existing React-based application stacks.
- React bindings
- React Native bindings
- Reuse the same schema across web and mobile
- Keep business logic separate from UI components
CLI Workflow
Build and test forms directly from the command line.
- Edit schemas
- Preview forms
- Test form behavior
- Work with schemas during development
- Keep form definitions within existing development workflows
AI-Assisted Editing
Use natural language to propose changes to form schemas.
- Describe schema changes in plain language
- Generate proposed modifications
- Validate changes before saving
- Keep AI-assisted edits within the schema workflow
Offline Mobile Forms
Run form logic locally on mobile devices without requiring a constant connection.
- On-device calculations
- On-device validation
- Conditional visibility on the device
- Suitable for offline data collection
Built For Developer-Controlled Forms
form0 is designed for teams that need structured forms without giving up control over their application architecture.
It is particularly suited to:
- Developers building custom form experiences
- Product teams creating structured data-collection workflows
- Compliance teams building audit and inspection forms
- Field teams collecting information through mobile applications
- Engineering teams that need reusable form logic across platforms
- Teams with custom data infrastructure that want to control where records are stored
Common Use Cases
Inspection Forms
Build structured inspection workflows with validation, conditional fields, and calculations while keeping the logic in a reusable schema.
Surveys
Create structured surveys that can run across web and mobile interfaces without duplicating form behavior.
Audits & Compliance
Build forms for audits, compliance checks, and other workflows where consistent validation and conditional logic matter.
Mobile Data Collection
Create forms that continue to perform calculations, validation, and conditional logic on the device even when working offline.
Inventories & Field Notes
Use structured schemas for inventory tracking, field notes, collection workflows, and other data-capture applications.
Form Logic Separate From the UI
One of the main ideas behind form0 is separating the form's behavior from how it is displayed.
Instead of embedding conditions, calculations, and validation directly inside individual UI components, developers can define that logic within a shared schema. The same definition can then be used with different interfaces and platforms.
This makes it possible to maintain a consistent form experience across web, mobile, and other environments without recreating the same rules for each application.
One Schema Across Platforms
form0 is built around the idea that a form definition should not need to change simply because the interface changes.
A single schema can provide the underlying behavior for Node.js applications, browser experiences, React interfaces, React Native apps, and CLI-based workflows. This can reduce duplicated form logic when the same data-collection process needs to exist across multiple surfaces.
Your Data Model, Your Storage
form0 provides the form engine without requiring teams to adopt a specific storage system or data model.
That gives developers more control over where submitted records live and how they are stored, processed, and synchronized. The form layer can therefore fit into an existing application architecture rather than forcing the project into a separate hosted form ecosystem.
AI-Assisted Schema Development
The CLI and editing workflow also include AI-assisted schema changes. Developers can describe what they want to change in plain language, while the proposed modification can be validated before being saved.
This provides a more accessible way to work with complex schemas without removing the underlying developer control over the final form definition.
Why It Matters
Building the same form experience across web and mobile often means duplicating validation, calculations, conditional logic, and event handling inside different application layers.
form0 takes a schema-first approach by putting that behavior into a reusable form engine. The interface can change while the underlying logic remains consistent.
The result is an open-source form ecosystem for developers who want structured, portable form logic while keeping control over the UI, application architecture, data model, and storage.
Build Forms Around a Shared Schema
Define validation, conditions, calculations, and events once, then use the same form logic across Node.js, browsers, React, React Native, mobile apps, and CLI workflows.