Drop-in themes for any UI · v1.0

Theme anything. In one line.

ThemeCn gives any interface controllable, performant themes: React, Vue, Svelte, Angular or plain HTML. Type, colour, radius, density and depth swap in a single frame. Pick one and watch this page change.

npx themecn add obsidianswap time —
Revenue · Oct+18.2%
$84,210

Invite your team

ALKRMN

Pro workspace

Unlimited projects and priority support
$16/mo
Weekly report email
One component · six themes

Same markup. Different worlds.

Studio
Active users+9.4%
12,804

Deploy preview

Built in 41 s

Every token under your thumb.

Themes are tokens. Tune them at runtime per user, per tenant or per component, with no re-render.

Checkout · v2

ready
Preview built in 41 s

      

No matter the framework.

ThemeCn writes CSS variables, so anything that renders CSS can wear a theme. Each adapter is under 400 bytes.


  

Built to disappear

2.1 KBgzipped runtime
0component re-renders on swap
<16 msto switch a full theme
No flashon first paint, SSR-safe

Wear any theme.

MIT licensed. Forty themes included. Bring your own from a DESIGN.md.

Frequently asked questions

What is ThemeCn?

ThemeCn is a theming layer for any UI. Type, colour, radius, density and depth are tokens that swap in a single frame.

Which frameworks does ThemeCn support?

React, Vue, Svelte, Angular and plain HTML.

How do I install ThemeCn?

One line: npx themecn init.

Can I try the themes before installing?

Yes. The page is the demo: pick a theme on the landing page and watch it change.