Build cross-platform desktop apps with a Rust UI framework
GPUI Kit is a Rust-based desktop application framework that provides finished UI components and data processing infrastructure. It allows you to create high-quality desktop apps that run on macOS, Windows, and Linux with the same code.
Structure validated in commercial apps
This framework was extracted from the development of Longbridge Pro, a public commercial desktop app. It was not designed purely theoretically but built to reflect features required in real operational environments. It includes more than 75 documented components and primitives, providing various UI elements such as forms, navigation, overlays, data display, editing, feedback, and layout. These components feature refined interactions and productive defaults, allowing developers to use them immediately.
An ecosystem composed of three layers
GPUI Kit is divided into three layers that can be selected according to application needs. gpui-component is a fully styled UI system suitable for building apps quickly. gpui-base provides only behavior, state, and infrastructure without styling, for cases where you want to own the design system directly. gpui-shell is a runtime that allows a Rust host to load JavaScript scripts to extend panels or business logic. This structure offers flexibility similar to shadcn/ui in the web ecosystem, and each layer is managed through a single crate called gpui-kit. A fully styled UI system suitable for building apps quickly. Provides only behavior, state, and infrastructure without styling, for cases where you want to own the design system directly. A runtime that allows a Rust host to load JavaScript scripts to extend panels or business logic.
High-performance data processing and accessibility
It supports data tables and virtual lists, which are core to desktop apps handling large amounts of data. It maintains virtual scrolling, fixed and resizable columns, sorting, and cell selection even with hundreds of thousands of rows. The code editor supports Tree-sitter highlighting, LSP diagnostics, autocomplete, and hover features, showing stable performance even with 200K lines. Accessibility features via AccessKit are embedded in the interaction layer, and UI integration tests allow rendering actual components in headless windows and simulating pointer and keyboard inputs to verify state.
Installation and getting started
Adding gpui-kit = "0.7" as a dependency to a Rust project includes GPUI, base, component, and assets together. Default features enable gpui-component and the icon set, while unused layers can be disabled to select only necessary parts. After calling gpui_kit::init(cx), you can open the application window with gpui_kit::open_window. If using an AI coding agent, you can install GPUI Kit usage patterns and design guides to the agent with the npx skills add longbridge/gpui-kit command.
Considerations before adoption
Since this framework is based on Rust and GPUI, it is suitable for developers familiar with the Rust ecosystem. WebAssembly support allows running the same component showcase on the web, but the primary target is desktop applications. The license for software source and documentation code examples is Apache-2.0, while documentation text and illustrations are provided under CC BY 4.0. GPUI is based on Zed Industries' UI framework, and the UI design is inspired by shadcn/ui and Reui. It is worth considering this framework when developing desktop apps that require large-scale data processing or complex UIs, especially if you want a high-quality Rust-based interface.