Forked from gpui-kit.

One component collection for every GUI framework.

uni-kit is a universal, framework-agnostic ecosystem of UI components. with more GUI frameworks on the way.

  • 228 components
  • 1367 examples
  • macOS, Windows, Linux
Capabilities

Built for information-dense software.

The systems that real desktop applications need are integrated into one framework.

Any Charts you need

Charts, plots and visualizations, all drawn by the GPU so dense interfaces stay smooth instead of dropping frames.

  • Chart
  • Plot
  • GPU

Complex data tables

Virtual scrolling, fixed and resizable columns, sorting and cell selection across hundreds of thousands of rows.

  • Table
  • DataTable

Easy install with npx, pnpm and bun

Add any component with a single command — run it through npx, pnpm or bun and it drops straight into your project.

  • npx
  • pnpm dlx
  • bunx

A real Starter templates

Production-ready starter templates to scaffold a new project, wire up navigation and ship a first release in minutes.

  • Starter
  • Template
  • Scaffold
  • CLI

Composable blocks

Prebuilt blocks that snap together into full screens, so you assemble layouts instead of writing them from scratch.

  • Block
  • BlockSection
  • BlockGrid

Multi-theme support across frameworks

Light, dark and custom themes driven by semantic tokens instead of endless style fields.

  • Theme
  • ThemeColor
  • ActiveTheme
Trajectory

From one library to every GUI

Where the project has been, in the order it happened, and where it goes next.

2024 · January

GPUI

A fast, hybrid immediate and retained mode, GPU-accelerated UI framework for Rust. From the creators of Zed & Delta.

2026

GPUI Kit

One dependency instead of five. gpui-kit puts GPUI, Base and the components at the crate root, so an application imports the toolkit and nothing else.

Our work starts here

August 2026

The fork

uni-kit forks GPUI Kit to carry the same ecosystem beyond a single framework.

September 2026

Slint support

A second target: the components written for Slint, beside a registry that installs them into a project.

October 2026

Blocks and starter kit

Three installable GPUI screens — sidebar, dock, settings — and forkable Slint templates, so the first change in a project is your own.

Next

Every GUI

The registry keeps a component's source apart from the framework that draws it. The next targets are the frameworks you ask for.

FAQ

Frequently asked questions

What people ask before their first install. Anything missing belongs in Discussions.

What is uni-kit?

A fork of GPUI Kit that keeps the component library and the applications built on it, and carries the same catalogue past a single framework. GPUI is what it builds on today; Slint is the second target, from source written for it.

How much does uni-kit cost?

Nothing. It is 100% free forever — no trial, no paid tier, no per-seat licence and no feature held back for a plan. The crates are Apache-2.0, so you can ship them in closed-source and commercial products without paying anything or asking permission.

Do existing GPUI applications keep working?

Yes. The imports you already have are unchanged, including use gpui_kit::component::button::Button;, so an application written against GPUI Kit compiles here without edits.

What is a block?

A whole screen built from the components — a sidebar, a dock, a settings page — with the spacing, grouping and focus order already decided. Blocks install with the same command, and each one shows its source on the page.

Which framework should I choose?

GPUI if you want the components as a Rust crate on Zed’s GPUI. Slint if you want the same catalogue as .slint files inside your own project. The catalogue is shared; only the language the components are written in changes.

Can I use it in a commercial application?

Yes. The crates are Apache-2.0, the same licence as GPUI itself, so you can ship them in closed-source products. The documentation is covered separately.

Where do I report a bug or ask a question?

Open an issue for something broken, and a discussion for anything else — a question about an approach, a request for a component, or a framework you would like to see supported next. Both are linked just below.

Still have questions?

Ask in Discussions, or open an issue if something is broken. Both go tothe repository .