Skip to content
The innovation of interfaces.
NEWCompose a SaaS in one command

A product UI systemfor everything youship.

Tokens, looks, compose, and upgrade. MIT. One command writes a themed SaaS you can keep editing.

$ bunx create-cronus-app my-app --template saas

✓ blocks · dashboard, billing, team

✓ theme · aurora · dark

✓ cronus-ui.json · upgrade path on

5
5
1
2
0
6

For builders

One CLI.Every surface.

Scaffold a SaaS, add a page, set a theme, upgrade without wiping edits — the same tokens, the same contract.

212
components
5
themes
3
looks
import { CronusUIProvider } from "@cronus-ui/theme";
import { Button } from "@cronus-ui/ui/button";
export function App() {
return (
<CronusUIProvider defaultThemeName="aurora">
<Button>Get started</Button>
</CronusUIProvider>
);
}
Snippet language

212

components in the catalog

22

compose templates

5

crafted themes

Live theming

One palette. The whole product follows.

Pick a theme — every surface, border, gradient and shadow in the preview re-themes instantly. No re-render, no rebuild. This is the whole idea.

Radius14px
app.cronus.devaurora
Monthly revenue
$248,900
+18.2% vs last month
Liveaurora

Your team

AKMRJDSL+9k
Looks

One system. Three materials.

Default, Brutalist, and Glass sit on the same tokens. Switch the look — radius, border, shadow, and surface follow. Theme and mode stay independent.

Looks
DefaultStable

The same tokens. Different material.

Radius, border, shadow, and surface follow the look. Buttons stay solid primary and outline — the catalog, not a second skin.

Apply with data-cronus-look="default" on any subtree — the docs chrome stays Default.

Why Cronus UI

The catalog is the means

Accessible, own-your-code components and full blocks — wired to one token system, with an AI Kit that teaches your agent the loop.

Token-driven

Every component reads semantic tokens. Change one and the whole app re-themes live — no re-render.

Accessible by default

WCAG-minded, axe-tested, full keyboard + focus-visible rings on every interactive element.

Own your code

npx cronus-ui add <component> copies real source into your repo. upgrade 3-way-merges the next release of primitives and composed pages without wiping local edits.

Blocks, not just primitives

Full sections — marketing, dashboards, auth — plus compose templates store, landing, and saas.

AI Kit included

Ships an AGENTS.md doctrine plus skills so agents compose, add-page, and theme — not just add a button.

Five crafted themes

Aurora, Neutral, Midnight, Sunset, Emerald — each a full, considered palette. Or make your own.

The catalog

Primitives you can feel

The primitives behind compose — live-previewed, accessible, and token-driven.

Buttons
Badges
PrimaryStableBetaNewDraft
Controls
Data
Themes shipped
12,480
+24%
AKMRJDSL+9k
Card
Upgrade to Pro
Everything to ship a themeable product.
Theming
AuroraNeutralYour brand
Get started

Compose a product, add a page, keep it

One command composes a themed SaaS from validated blocks. Add a page when you need another route. Upgrade pulls the next release without losing local edits.

Start a SaaS

A Next.js app composed from validated blocks — auth, dashboard shell, billing — plus theme and AI Kit.

npx create-cronus-app my-app --template saas

Grow a page

Install blocks, write the route, and update chrome nav — a composed page, not a hand-rolled layout.

npx cronus-ui add-page --route /faq --blocks faq,cta --nav FAQ

Keep it

Dry-run first. Upgrade 3-way-merges primitives and composed pages without wiping local edits.

npx cronus-ui upgrade --all --dry-run

Already have a repo? npx cronus-ui init then add. Prefer a stack? Stack Builder or bun create cronus-stack@latest.

Compose, then upgrade without losing edits

Scaffold a themed SaaS, add pages as you grow, and pull the next release without wiping local work.

Sponsor

The engine is free. If it helped you ship, you can leave any amount — one-time, no paywall.

Choose an amount