FAQ & Non-Goals

Frequently asked questions

Is Kin Form production-ready?

Kin Form is still pre-1.0, but the API is stable in practice now and every publish runs through CI with test coverage. We encourage you to try it out and send us feedback.

Does it work outside React?

@kintools/form-core has no framework dependency at all. It carries the whole form model, the FieldApi/FormApi tree with per-node validation, dirty tracking, array helpers, and submission, over a subscribe/notify pub/sub base that framework bindings hook into. @kintools/form-react and @kintools/form-lit are both published and ready to use today.

Is there Vue, Svelte, or Solid support?

Not yet. Nothing about core is React- or Lit-specific, so another binding is realistic future work, but it isn't scheduled ahead of someone actually needing it, not to keep the package list growing. Open an issue if you'd use one.

Does it support Zod, Valibot, or ArkType validation?

toSchemaValidator() (from @kintools/form-validators) adapts any Standard Schema-compliant library, Zod, Valibot, ArkType, and others, into a schemaValidator that checks a whole group's or the whole form's value in one pass, populating schemaErrorMap and each field's own error. It's a separate option from hand-written per-field validators; the two coexist, and when a field has both, its own per-node message is the one field.error shows. See Schema Validation.

Does it work with SSR or Next.js?

Yes. The SSR guide covers the two things that actually change: don't use field.id as a DOM element id (React's useId() already solves that and avoids server/client mismatches), and pass server-loaded data straight into initialValue rather than constructing the form empty and calling reset() once data arrives.

Is there a DevTools integration?

Yes, for React: @kintools/form-devtools-react connects a DevtoolsProvider/useFormDevtools inspector panel to a form's live tree, showing every registered field's value, error, touched, and validating as they change. It's React-only today; there's no Lit equivalent yet.

How does it compare to React Hook Form, Formik, or TanStack Form?

The comparison pages carry the actual feature matrix, API-surface matrix, bundle-size chart, and wall-clock performance numbers, plus a detailed, code-by-code comparison against React Hook Form. One caveat worth stating directly: the current performance numbers are measured in Happy DOM, not a real browser yet, reproducing them in an actual browser is still on the roadmap.

What's the bundle size?

@kintools/form-core is 4.5 KB gzipped, @kintools/form-react's bindings add 0.8 KB on top, and @kintools/form-validators is 0.7 KB, each measured independently (bundled and minified with rolldown) since you only pay for what you actually import. Core plus React together comes to about 5.2 KB gzipped.

Where do I ask a question or report a bug?

GitHub Discussions for questions and design feedback, Issues for bugs.

Non-goals

Chasing benchmark wins isn't the pitch here, and neither is copying every feature a competing library ships. The comparison pages exist to name real tradeoffs directly, not to win a spec sheet.

Kin Form doesn't validate anything on its own terms the way a schema library does. toSchemaValidator() is an adapter onto Zod, Valibot, ArkType, or any other Standard Schema implementation, not a competing validation engine, and the built-in @kintools/form-validators factories (required, email, pattern, and the rest) are deliberately small, common-case helpers rather than a general-purpose rules system.

Framework support stops at React and Lit for now. Nothing in core rules out Vue or Solid bindings later, but neither is being built ahead of someone actually needing it, and the same restraint applies to DevTools: only @kintools/form-devtools-react exists, with no Lit inspector yet.

Migration guides from React Hook Form and Formik aren't published yet either: they're listed as in-progress work, not finished, so don't expect a drop-in codemod or a guide walking through an existing RHF form today. The React Hook Form comparison is the closest thing available in the meantime.