gpui-ai

Components for AI applications built with GPUI

37 components for chat, streamed responses, tool calls, approvals, and more. Built for GPUI and gpui-component, with 55 included themes and 13 decorations to paint into them.

Guided demo — gpui-ai

Starts when it scrolls into view

Pop out

NORD FROST · DARK · RADIUS 6/10 · BASE 16PX · SHADOW

Send the question or choose a suggestion. Not a recording: this is the library compiled to WebAssembly, running a fixed script with tool calls, reasoning, and a streamed reply.

Where to go

  • Start

    Add the dependency and open a window with a component in it.

  • Components

    Thirty-seven surfaces an AI application keeps rebuilding, each one running.

  • Effects

    Decorations an application paints into a component, and the motion channel.

  • Showcase

    Whole compositions rather than parts: a conversation, a workspace, an instrument.

  • Guides

    Theming, who owns what, accessibility, and what a browser demo cannot prove.

  • Themes

    Fifty-five presets, the tokens each one sets, and the JSON to take away.

  • API

    The generated reference for every type this library exports.

Install

Everything is on crates.io, GPUI included — it is published as gpui-pre, which is why that line carries a rename. Start has the rest: the platform features, the two calls at startup, and a complete application in eighty lines.

Cargo.toml
[dependencies]
gpui-ai = "0.8.0"
gpui = { package = "gpui-pre", version = "0.3.3" }
gpui-component = "0.6.0"
gpui_platform = { package = "gpui-pre-platform", version = "0.3.3", features = ["font-kit", "x11", "wayland", "runtime_shaders"] }

Preview themes

  • All 55 themes

How it is built

Uses gpui-component
gpui-ai composes gpui-component controls and themes. Custom components use GPUI directly.
Your application owns state
Components render your data and send typed events. Your application handles requests, retries, and storage.
JSON themes
Add a theme file to include it in the registry, the gallery, and this website.
Reduced motion
Animations respect reduced-motion settings and keep their state readable.

How this site works

The site serves static HTML. Your browser runs the gallery's GPUI components through WebAssembly and WebGPU. It downloads the shared gallery once and starts each demo as it scrolls into view.

Build details

We build this site from main, so the demos may be ahead of the latest release. The links below show the exact revisions.

Latest release
v0.8.0
License
MIT
gpui-component
gpui-component 0.6.0