Source-shipped · React 19 · Tailwind 4 · AI-ready

Build your SaaS with AI — on components you actually own

Every component ships as readable .tsx — install it as a dependency or copy it into your repo. Your bundler compiles it, your agent can read it, your brand can keep it.

85+

Components

11

Packages

1

Lockstep version

0

Build steps

The basics, doing real work

Not a component zoo — product surfaces. Every card below is rendered live by the library: forms, settings, KPIs, teams. Tab through them, they all work.

Set a new milestone
Define your target and we'll help you pace it.
The primitives underneath
Every card on this row is built from these.
DefaultSecondaryOutlineDestructive
Monthly recurring revenue
+12.4%
$13,600
Chart of MRR over 6 points
monthMRR
Feb8,1
Mar9,4
Apr9
May10,8
Jun12,1
Jul13,6
Notifications
Choose which alerts you want to receive.

Deposits, withdrawals and transfers.

Login attempts and account changes.

A summary every Monday morning.

Payout threshold
Minimum balance required before a payout is triggered.

$2,500

$50 (min)$10,000 (max)
Ready to claim
x
Team
Invite and manage who has access.
AD

Ada Lovelace

Owner
GH

Grace Hopper

Admin
AT

Alan Turing

Member
ADGHAT
+5

An email editor. On your page. In your codebase.

Stop paying rent for your own email templates. Drop the block editor into your app, let your users design emails, render the same document server-side. This one is live — drag something.

Live — this is the real component

Yes, even the globe.

Maps and a 3D globe on free, key-less vector tiles. Lazy-loaded so your bundle never pays for it until it's on screen.

Beyond primitives

Buttons and dialogs are table stakes. These are the product-level surfaces a SaaS actually needs — published in lockstep at one version.

Own it, both ways

Most kits make you choose on day one. Here it's the same source either way.

As a dependency

One bun add, lockstep updates across 11 packages, your bundler compiles the source. The mode that scales: ship two, three, five products on the same components — one version bump updates every app, instead of maintaining N pasted copies of every button, table and email block.

As your code

Copy any .tsx out of node_modules into your repo. Same file, zero ceremony — no CLI to run, no generated files to babysit, no registry to sync. Your package manager already is the registry.

Copy-paste kits feel free until your second SaaS. Then every component is a fork you maintain everywhere it's pasted.

Built on Base UI

Accessibility, focus management and keyboard behaviour come from Base UI. The components add styling, composition and defaults.

Yours to rebrand

Every colour, radius and font is a CSS custom property. Override the handful you care about and the whole system follows.

Built for the AI workflow

A compiled bundle is a wall. Source is a door — for you and for the model doing the typing.

Readable by agents

The source sits in node_modules as .tsx. Cmd+click and your model both land on real code, so “make the checkout use our brand” actually works.

Predictable to generate against

One convention across 85 components: Base UI underneath, cva variants on top. What the model learns from one file holds for all of them.

Tokens as the contract

Tell the AI to use --primary and the whole system follows. The tokens are plain CSS custom properties, not a theming API to hallucinate around.

Read the code, then keep it

Install the packages, copy the tokens, and every component is yours to open, step through and rebrand.