gpui-kit GitHub

Components

A builder is RenderOnce: construct and mount it in one expression. A view survives a frame, so it is held in an Entity. Both report an intent and apply nothing — the host decides, which is why a refused change is visible as the control not moving.

Accordionbuilder A stack of disclosure sections. AnimatedNumberbuilder A numeric readout that animates between values. ApprovalPromptview One request for permission, with the answer left to the caller. AspectRatiobuilder A container whose two dimensions stay in a fixed ratio. Avatarbuilder A circular mark for a person or a workspace. Badgebuilder A compact status label. Breadcrumbbuilder A trail of crumbs, collapsed in the middle when it grows too long. BrowserPanelbuilder A framed web view: address, controls, and the rectangle a page goes in. BulkBarbuilder The bar that appears over a selection, says how large it is, and offers what can be done to it. Buttonbuilder A labeled action. ButtonGroupbuilder Adjacent related actions sharing one frame. Calendarview A month of days. Calloutbuilder A bordered message block. Cardbuilder A raised panel that groups related rows or content. Checkboxbuilder A box that reports one of on, off, or partly on. CodeViewbuilder Read-only code with a gutter. Collapsiblebuilder A single region behind a header that opens and shuts it. Comboboxview A [`Select`](crate::controls::select::Select) you can type into. CommandPaletteview A query field over a list of commands. ContextGaugebuilder How much of a context window a run has used. ContextMenuview The same menu, opened at the pointer over a region rather than from a trigger. CopyButtonview A button that copies caller-supplied text and confirms what happened. CostMeterbuilder What a run has cost so far, line by line. DataGridbuilder A grid that renders only the rows its viewport holds. DateInputview A text field over a host-owned calendar, with that calendar in a popover. DescriptionListbuilder A list of term and description pairs, in one or two columns. Dialogview A composed modal: scrim, focus trap, title, body, and up to two actions. Dividerbuilder A horizontal rule between groups. Dockbuilder Panels arranged in regions around a centre. DragGhostview Drawerview A panel anchored to one side of the window. Dropzonebuilder An area that accepts a drop. EmptyStatebuilder A centred explanation with an optional action. FailurePanelbuilder A panel that states what went wrong instead of what it was going to show. FilterBarbuilder A row of active conditions, a way to add one, a clear-all, and the count. FindReplaceview A [`SearchField`] with a replacement field and the two replace actions. FormFieldbuilder A labelled control, with the secondary text a typist needs around it. GradientSpinnerbuilder A three-by-three gradient matrix, used for longer indeterminate work. GraphNodebuilder A step of a run, as a card on the canvas. HighlightedTextbuilder A run of text with some of it marked. HoverCardview A preview surface that opens on hover and can be pointed at. Iconbuilder A glyph from the bundled catalog. IconButtonbuilder An action carried by a glyph alone. ImageViewerbuilder A framed viewer for one image at a time. InlineEditbuilder Text that a click or enter turns into a field. JsonViewbuilder A collapsible view of a structured value. Kbdbuilder A keyboard shortcut, written the way the current platform writes it. KeybindingRecorderview A field that records one keystroke. Listbuilder A list that renders only the rows its viewport holds. ListRowbuilder One row inside a [`Card`]. Markdownbuilder A rendered Markdown document. Menuview A list of commands, opened from a trigger. Menubarview A row of menus, at most one of them open. MessageListbuilder A conversation. NodeGraphbuilder A run drawn as connected steps. NotificationCenterview The list of notifications a window has accumulated. NumberInputview A number field with a step grid and, optionally, a range. Overlaybuilder A floating surface. Paginationbuilder First, previous, next, and last, plus a numbered range when there is one. PermissionMatrixbuilder A grid of subjects against actions. Popoverview A surface anchored to a trigger, holding whatever the caller puts in it. ProgressBarbuilder A horizontal bar for work whose extent is known. ProgressCirclebuilder A ring for work in a place too tight for a bar. PulseLoaderbuilder A row of pulsing cells, used while a request is in flight. Radiobuilder One option in a set where exactly one can hold. RangePickerview A calendar with two ends and a running account of what they add up to. SchemaFormview A form built from a schema. ScrollAreabuilder A scrollable region. SearchFieldview A query field, a hit count, and next and previous. SegmentedControlbuilder A strip where exactly one segment holds. Selectview A closed list of options with one answer. ServerListbuilder The connections an application holds, and what each one offers. SettingsRowbuilder One setting: what it is called on the left, what it is set to on the right. SettingsSectionbuilder A headed group of settings rows. Sidebarbuilder A collapsible navigation rail. Skeletonbuilder Placeholder rows shown while a list's real shape is unknown. Sliderbuilder A horizontal track with one handle. SplitButtonview One action, plus the ones it stands in for. SplitPanebuilder Two panes separated by a divider. SplitTreebuilder Draws a [`SplitLayout`] and reports what the typist asked to change. StatusBarbuilder The strip along the bottom of a window. StatusDotbuilder A tone-colored dot, the smallest state indicator in the system. StatusLinebuilder A dot plus a short label, for inline state. StepListbuilder An ordered run of steps with a summary of how far it has got. Switchbuilder A control that takes effect the moment it is flipped. Tablebuilder A table with a header that stays put while the body scrolls. Tabsbuilder A row of tabs. The strip publishes one [`Role::Tab`] node per tab. Tagbuilder A label with an optional remove action. TagInputview A field that collects a set of short tokens. TextAreaview Wrapped, multi-line editable text. TextInputview One line of editable text. ThinkingBlockbuilder A collapsed block of model reasoning. TimeInputview A segmented time field over the host's own clock. Timelinebuilder A chronological feed, optionally divided into days. ToastLayerview The stack of notifications for one window. Togglebuilder A button that stays in. ToggleGroupbuilder A run of toggles where none, one, or several may be in. ToolCallCardbuilder One tool invocation, in whichever of its five states holds. Toolbarbuilder A bar of grouped actions. Tooltipbuilder A themed help surface. TooltipViewview TransportBarbuilder A transport for one piece of media. Treebuilder A disclosure hierarchy. UploadListbuilder A list of files being uploaded, optionally over the zone that took them. Wizardbuilder A multi-step flow: the steps, the current step's body, and the way on.