Stop renting your forms.
SaaS form builders charge you monthly and own your data. FieldCraft is a self-hosted form engine you own forever. Define forms in JSON. Render in React. Ship anywhere.
Form tools weren't built for developers.
You either rent a SaaS, pay for an enterprise SDK, or build everything yourself.
SaaS Lock-In
SaaS form builders host your forms, own your data, and charge $25–100/month. Cancel and your forms disappear.
Expensive Libraries
Enterprise form SDKs cost $1,000–5,000/year in licensing. For most teams, that’s budget you don’t have.
Build from Scratch
Open-source form libraries handle inputs. The rest — multi-step navigation, conditional logic, scoring, draft saving — is on you.
FieldCraft is the middle ground. A full form engine you own forever. MIT-licensed core. Zero recurring fees.
Three steps. Zero vendor lock-in.
Lightweight by design
- Core engine is under 15 KB
- Single dependency: zod for schema validation
- Works with React 18 and 19
- SSR and RSC compatible
One package. One dependency.
npm i @squaredr/fieldcraft-react
See what JSON can do.
Multi-Step Forms
Wizard navigation with progress tracking, section conditions, and jump logic. Users see only what they need.
Personal Info
Tell us about yourself
The things you'd have to build yourself.
Production features that other libraries leave to you.
Draft Persistence
Zero configUsers close the tab, their progress is saved automatically.
4-Layer Prefill
URL + Props + SchemaPopulate fields from schema defaults, URL params, props, or initial values.
Schema Validation
Catch bugs at bootCatches duplicate IDs, broken conditions, and invalid references at startup.
Safe Math Expressions
No eval()Calculated fields use a safe parser with arithmetic and functions.
Send responses everywhere. At once.
Adapters run concurrently. If one fails, the others still complete.
HTTP
POST to any endpoint with timeout, transform, and custom headers.
Built-inSupabase
Row-level security and optional field encryption built in.
MIT · FreePostgreSQL
Drizzle ORM with optional field-level encryption.
MIT · FreeWebhook
HMAC-SHA256 signed payloads with automatic retries.
MIT · FreeSaaS forms vs DIY vs FieldCraft.
Most teams pick one extreme. FieldCraft sits in the middle.
| SaaS Form Builders | DIY (Open-Source Libs) | FieldCraft | |
|---|---|---|---|
| Data ownership | Vendor stores data | Self-hosted | |
| Monthly cost | $25–100/mo | Free | Free (Pro $99 one-time) |
| Field types | Vendor-limited set | Build each one | 44 included, extensible |
| Conditional logic | Config UI | Build from scratch | Schema-defined + custom |
| Multi-step | Yes (vendor-styled) | Build from scratch | Built-in with branching |
| Draft saving | Vendor-managed | Build from scratch | Built-in (localStorage) |
| Vendor lock-in |
This is what production forms look like.
{
"id": "event-registration",
"title": "Conference Registration",
"settings": { "showProgress": true, "progressStyle": "steps" },
"sections": [
{
"id": "attendee",
"title": "Attendee Info",
"questions": [
{ "id": "name", "type": "short_text", "label": "Full Name", "required": true },
{ "id": "email", "type": "email", "label": "Email", "required": true },
{ "id": "company", "type": "short_text", "label": "Company" },
{
"id": "ticket",
"type": "single_select",
"label": "Ticket Type",
"required": true,
"options": [
{ "label": "General — $299", "value": "general" },
{ "label": "VIP — $599", "value": "vip" },
{ "label": "Workshop Bundle — $899", "value": "workshop" }
]
},
{
"id": "attending_dinner",
"type": "boolean",
"label": "Attending the networking dinner?"
},
{
"id": "dietary",
"type": "dropdown",
"label": "Dietary Requirements",
"showIf": { "field": "attending_dinner", "operator": "eq", "value": true },
"options": [
{ "label": "None", "value": "none" },
{ "label": "Vegetarian", "value": "vegetarian" },
{ "label": "Vegan", "value": "vegan" },
{ "label": "Gluten-free", "value": "gluten-free" },
{ "label": "Halal", "value": "halal" }
]
}
]
},
{
"id": "workshops",
"title": "Workshop Selection",
"showIf": { "field": "ticket", "operator": "eq", "value": "workshop" },
"questions": [
{
"id": "workshop_picks",
"type": "multi_select",
"label": "Choose up to 3 workshops",
"required": true,
"options": [
{ "label": "Building with FieldCraft", "value": "fieldcraft" },
{ "label": "Schema Design Patterns", "value": "schema" },
{ "label": "Advanced Conditional Logic", "value": "logic" },
{ "label": "Telehealth Form Compliance", "value": "telehealth" },
{ "label": "Performance at Scale", "value": "perf" }
]
}
]
},
{
"id": "summary",
"title": "Order Summary",
"questions": [
{
"id": "subtotal",
"type": "calculated",
"label": "Subtotal",
"config": {
"type": "calculated",
"expression": "({ticket} == 'general') * 299 + ({ticket} == 'vip') * 599 + ({ticket} == 'workshop') * 899",
"format": "currency",
"prefix": "$"
}
},
{
"id": "consent",
"type": "boolean",
"label": "I agree to the terms and cancellation policy",
"required": true
}
]
}
]
}3 sections, 12 fields, conditional logic, calculated pricing.
Ticket selection drives workshop visibility. Tax computes automatically.
You could write this JSON by hand.
Or build it visually in minutes.
Build your way. Ship faster with Pro.
The engine handles everything. Pro lets you build forms in minutes instead of hours.
FieldCraft Engine
- 44 field types
- Validation + conditional logic
- Multi-step + draft saving
- Submission adapters
FieldCraft Pro
- Drag-and-drop builder — no JSON to write
- Live preview as you build
- Theme editor — customize in clicks
- Response viewer for submissions
Try it yourself.
Drag fields, configure validation, set conditions — all without writing a single line of JSON.
One-time payment. No subscriptions.
Pay once, own it. Free patch updates within the major version you purchased. The open-source FieldCraft engine and renderer remain free forever (MIT).
The complete FieldCraft Pro toolkit. Schema Editor, Form Builder, Theme Editor, Response Viewer — everything you need to build production forms.
Everything in Pro plus HIPAA-ready patterns and 15 telehealth-specific field types. Built for healthcare forms.
A production-ready Next.js app with Prisma, authentication, and the Form Builder pre-integrated. Built and delivered by us.
*Prices are in USD and exclusive of applicable taxes. Tax may be added at checkout depending on your region. All purchases are processed via Gumroad. Each license key is valid for one production domain. Unlimited development and localhost use. See our Terms of Service and Privacy Policy for full details. No refunds after license key activation.
License & Legal
Starter & Pro — what you get: React components (npm packages) that you install into your own project. You receive the compiled source code under a commercial license. This is not a SaaS product — there are no servers, accounts, or recurring fees on our end.
Business — what you get: A custom-built Next.js application with Prisma, authentication, and the Form Builder pre-integrated. Delivered as a private GitHub repo within 2 weeks of a requirements call. The 2-week timeline begins after we confirm scope together. You own the delivered source code.
Updates: Your purchase includes free patch and minor updates within the major version you bought (e.g., v1.x.x). Major version upgrades (v2, v3, etc.) may require a separate purchase. We have no obligation to ship future features on any timeline.
Refund policy: Starter and Pro — no refunds after a license key has been activated. Business — no refunds after project kickoff (requirements call). If you experience a technical issue, contact us via GitHub Issues and we will work to resolve it.
Open source dependency: FieldCraft Pro depends on the free, MIT-licensed FieldCraft engine. The engine and renderer are not part of this purchase — they are separate open-source packages maintained independently.
No warranties: FieldCraft Pro is provided “as is” without warranty of any kind, express or implied. We do not guarantee fitness for any particular purpose. See our Terms of Service for the full legal text.
Support: Support is provided on a best-effort basis via GitHub Issues. There is no guaranteed response time. We are a small team and prioritize bug fixes over feature requests.
Full terms: Terms of Service · Privacy Policy
What will you build?
Install the package, write a schema, and render your first form.
View the roadmap