OpenForge
Live preview
MIT-licensed · TypeScript

Type-safe forms that don't fight you.

driftkit is a tiny, dependency-free form library for React — schema validation, great DX, and 4kb gzipped. Loved by 200+ contributors.

4kb gzippedZero depsMIT
14.2kGitHub stars
210Contributors
1.4MWeekly downloads
4kbGzipped

Install in seconds

bash
$ npm i driftkit
# or
$ pnpm add driftkit
Why driftkit

Small library, serious ergonomics.

Type-safe by default

Infer types from your schema — no casting.

Tiny & fast

4kb gzipped, zero dependencies.

Framework-agnostic core

React adapter today, more coming.

Great DX

Helpful errors and full IntelliSense.

Truly open

MIT, community-governed, no rug pulls.

Battle-tested

Used in production by thousands of teams.

Example

The whole API, basically.

signup-form.tsx
import { useForm } from "driftkit";

const form = useForm({
  email: string().email(),
  password: string().min(8),
});

// form.values and form.errors are fully typed
Maintainers & contributors

Built by the community.

A few of the people who keep driftkit moving.

Sam Okonkwo

Creator & maintainer

Wrote the first commit on a train.

Lena Hartmann

Core maintainer

Owns the validation engine.

Yuki Tanaka

Docs & DX

Makes the errors friendly.

Built in the open

Where driftkit is headed.

Shaped by RFCs and votes in Discord — every milestone is public.

  1. Shipped

    v2 · Stable core

    Type inference rewrite, 4kb gzipped, zero deps. The API is locked.

  2. In progress

    Vue & Svelte adapters

    The framework-agnostic core, wired to two more renderers. In beta.

  3. Next

    Async + server validation

    First-class async rules and a server-side validation helper.

  4. Exploring

    Visual schema builder

    A community-requested playground for composing schemas.

Like driftkit? Help it grow.

Star the repo, open a PR, or sponsor a maintainer hour.

Open source lives on contributions, not vibes.