The library is full-stack, meaning it comes with database schemas for the form/response tables, backend route handlers for creating/updating forms and collecting form submissions.
I use JSONForms [0] to define how forms should be rendered, and implemented a new JSONForms renderer for shadcn/ui projects. (But you can use any other compatible renderer).
An overview of the features:
- DB Schemas, request handlers, and frontend hooks included
- Form builder shadcn/ui component with Google Forms-like UX
- Integrates with any TypeScript stack
- Form validation using JSON Schema + Zod
In the future, I might look at creating data analysis and export functionality.
Live demo: https://fragno.dev/forms
Docs: https://fragno.dev/docs/forms
Code: https://github.com/rejot-dev/fragno/tree/main/packages/forms
Everything under MIT license