Pre-release · v0.1

The React framework where everything is an add-on.

kitr is a thin layer over the libraries you would pick anyway: TanStack, React Hook Form, Zustand, ky, h3 and Tailwind. Start small, then add sign-in, forms, an API or live updates with one command each.

kitr new my-app --kit app

First time? Run npm i -g kitr once. Inside a project, the global kitr runs your project's own version.

every command runs from flags, so agents and CI never hit a prompt
~/code $ kitr new my-app --kit app
✓ created my-app from the app kit
  router · query · http · forms · table · state · ui · auth · mocks · testing
✓ wrote AGENTS.md
→ cd my-app && npm run dev

Start from a kit, add the rest

Every provider is listed in kitrrc.ts. Nothing is hidden.

All packages →

blank

--kit blank

Router and query. Add the rest as you go.

app

--kit app

A logged-in app on an existing API, with forms, tables and auth.

fullstack

--kit fullstack

The app kit plus server rendering, server actions, an API and sockets.

server

--kit server

A pure backend with controllers and a typed client. No React.

Re-export, never re-implement

kitr/router is TanStack Router plus a few helpers. Upstream docs stay valid, and leaving is an import rewrite.

One data contract

REST APIs, your API routes, server actions and sockets all produce the same queries and mutations.

Explicit wiring

kitrrc.ts lists every provider. Config is typed per package. Nothing is hidden.

Made for agents too

Every command runs from flags, and AGENTS.md stays current as you add packages.