56 components · 8 blocks · dark theme · built for tools and games

Copy-paste components
for Slint.

Like shadcn, for native apps. The CLI drops the source into your project and you own it. Tokens, typed variants, focus rings, and keyboard handling come wired up.

$npx slintcn@latest add button
Why slintcn

You own the code.

slintcn isn't a dependency. The CLI copies Slint source into your repo, rewrites the imports to fit your layout, and stays out of your way.

You own the files

slintcn add copies .slint source into your project. Edit it however you want. Imports rewrite to match your folders.

A real CLI

init, add, list, view, build. Install from the built-in registry, a URL, or your own namespace.

Theming

Dark by default, light at runtime. Pick a base color (neutral, zinc, slate, stone) when you init.

56 components

Buttons, dialogs, tables, tooltips, and more. Typed variants, focus rings, keyboard nav, and animations are built in.

8 blocks

Sign-in, login, pricing, dashboard, settings, team, profile, and stats. Whole screens you install like any component.

Made for tools and games

A HUD layer most kits skip: Keycap, HudPill, and SlotTile for keyboard hints, status pills, and inventory slots.

Built with slintcn

See it running.

Every shot below is the live showcase, Slint compiled to WebAssembly. Open the demo →

Get started

Three commands.

You need Node 20+ and a Slint project. Files land in ui/slintcn/ and they're yours.

$ npx slintcn@latest init
$ npx slintcn@latest add button card dialog
$ npx slintcn@latest list # browse the catalog