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.

$cargo slintcn add button

no Node — cargo install slintcn · or npx slintcn 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, SlotTile, Hotbar, Reticle, and CompassStrip for keyboard hints, status pills, inventory, crosshairs, and headings.

Built with slintcn

See it running.

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

Get started

Three commands.

Use cargo (no Node — you already have it) or npx, whichever you prefer. Files land in ui/slintcn/ and they're yours.

$ cargo install slintcn
$ cargo slintcn init
$ cargo slintcn add button card dialog
…or npx slintcn@latest add button card dialog if you live in Node.