Skip to content
Bradley Hanson
All work

Open source · React library

Formosaic: config-driven React forms

Define a form once as JSON, and a rules engine handles conditional logic, validation, wizards, and auto-save. It renders through 11 UI library adapters.

Role
Author and maintainer
Period
2026 to present
Status
Published on npm
The formosaic.com home page: a headline about building forms with any UI library and a live JSON editor next to the rendered form
formosaic.com. The playground re-renders the form as you edit its JSON, in whichever UI library you pick.

Overview

Formosaic is a React form library where a form is one configuration object: fields, validation, ordering, and declarative rules. When field A changes to a value, rules can make field B required, hide field C, or change field D's options, without code in your components.

The library is MIT licensed. Around it I built formosaic.com: documentation, a live playground, and a visual form designer, with accounts and billing for the hosted product.

Design decisions

  • A UI-agnostic core built on React Hook Form, with adapters for 11 UI libraries including Fluent UI, MUI, Ant Design, Chakra, Mantine, Radix, and React Aria.
  • Rules declared as data, with 20 condition operators.
  • Multi-step wizards with conditional step visibility and rules that reach across steps.
  • Auto-save with debounce, retry, and abort.
  • Open core. The library and its adapters stay public, and the designer and hosted product live in a separate private repository that pulls the public docs in as a submodule.

Technologies

  • React 19
  • TypeScript
  • React Hook Form
  • Vitest
  • Storybook
  • Next.js
  • Clerk
  • Stripe

Contact

Get in touch

I'm interested in senior product engineering work where the UI, the SDKs, and the services behind them are one problem. Email is the fastest way to reach me.