Redpanda UIRedpanda UI

Changelog

Updates to the Redpanda UI Registry.

v1.11.0· 2026-06-16

patch#206@weeco

fix(command): default size to full (width-less, container-governed) instead of md.

bunx shadcn@latest add @redpanda/command --overwrite

v1.10.1· 2026-06-15

minor#208@malinskibeniamin

Add a self-contained RedpandaLogo icon and use it for the Auth0 authentication header, replacing the external S3-hosted redpanda-text-color.svg wordmark. The wordmark paints with currentColor so it adapts to light and dark themes (navy on light, white on dark), while the brand mark keeps its red. Removes the runtime dependency on the S3 asset.

bunx shadcn@latest add @redpanda/auth0 @redpanda/icons --overwrite

v1.10.0· 2026-06-09

patch#204@SpicyPete

fix(popover): default popover positioning to fixed so opening a popover with auto-scrolling content (e.g. a Command search input) no longer jumps the page to the top, and the popup flips above/below based on available room

bunx shadcn@latest add @redpanda/popover @redpanda/dropdown-menu --overwrite
patch#192@jvorcak

fix(data-table): hide the "N of M row(s) selected" info text in DataTablePagination when enableRowSelection is false

bunx shadcn@latest add @redpanda/data-table --overwrite

v1.9.2· 2026-06-09

minor#199@c-julin

Dark mode now uses a near-black surface palette. Backgrounds and the page surface drop to grey-black, cards/popovers/surfaces/muted sit one step up at grey-900, and elevated surfaces use grey-800. Border and divider tokens move to a solid grey-800 / grey-700 / grey-600 (subtle / default / strong) ramp, mirroring the light-mode grey ramp from the dark end of the scale.

bunx shadcn@latest add @redpanda/all --overwrite

v1.9.1· 2026-06-08

patch#200@SpicyPete

Separator now applies its orientation sizing via plain h-px w-full / h-full w-px classes instead of data-[orientation] variants. This lowers the selector specificity so a consumer's explicit size class (e.g. h-4 on a vertical separator) wins over the default, while horizontal/vertical defaults stay the same when no override is passed.

bunx shadcn@latest add @redpanda/separator --overwrite

v1.9.0· 2026-06-05

patch#197@c-julin

Card and Table now use the semantic border-border token for their outline instead of a hardcoded border-base-800, so the border follows dark-mode theming instead of rendering a fixed grey on dark surfaces. They also use bg-card instead of bg-white dark:bg-base-900, making the surface fully token-driven; the dark --color-card token moves from grey-800 to grey-900 to match. Sidebar no longer draws the left/right divider border between the sidebar and content.

bunx shadcn@latest add @redpanda/card @redpanda/table @redpanda/sidebar --overwrite

v1.8.1· 2026-06-04

minor#195@eblairmckee

Stepper step buttons now extend buttonVariants. Data table pagination 'number of items per page' in selector are now customizable via pageOptions prop.

bunx shadcn@latest add @redpanda/stepper @redpanda/data-table --overwrite

v1.8.0· 2026-06-04

patch#183@malinskibeniamin

fix(auto-form): hide the internal __autoform_unset__ sentinel in select, boolean, and oneof triggers. Unset values now render user-facing labels ("Not set" for optional select/boolean, the placeholder for required/oneof controls) via a SelectValue render-prop instead of leaking the sentinel string.

bunx shadcn@latest add @redpanda/auto-form --overwrite
patch#191@SpicyPete

fix(separator): stretch vertical separators with self-stretch instead of h-full so they fill the height of a flex row even when the container has no explicit height (previously they collapsed to zero height)

bunx shadcn@latest add @redpanda/separator --overwrite
patch#188@SpicyPete

fix(tabs): render the underline variant's active indicator over the bottom border so the full indicator is visible instead of being tucked beneath the line

bunx shadcn@latest add @redpanda/tabs --overwrite
patch#194@SpicyPete

fix(typography): forward refs on all typography components (Text, Link, List, etc.) so they can be used as asChild/Slot triggers (e.g. inside TooltipTrigger) without React ref warnings, and set displayName on each for clearer React DevTools and error stacks

bunx shadcn@latest add @redpanda/typography --overwrite

v1.7.1· 2026-06-02

minor#186@c-julin

Add Stat and StatGroup display components for labelled metrics and responsive KPI strips. Stat supports size (sm/md/lg), tone (default/muted/success/warning/destructive), mono tabular figures, and an optional delta change indicator (direction-driven icon and color). StatGroup arranges stats in a responsive grid via columns (2/3/4) and gap (sm/md/lg). Implements UX-668.

bunx shadcn@latest add @redpanda/stat --overwrite

v1.7.0· 2026-06-01

patch#178@SpicyPete

Fix a TypeScript error in consumer apps on @types/react@18 by rendering the hoisted theme <style> (React 19 href/precedence props) through an ElementType-typed tag. Runtime behavior is unchanged.

bunx shadcn@latest add @redpanda/code-block-dynamic --overwrite

v1.6.0· 2026-06-01

minor#180@c-julin

Add SyncCodeBlock — a synchronous variant of DynamicCodeBlock that highlights with a pre-bundled Shiki core highlighter (JS engine + statically imported grammars). Because the grammars are bundled, highlighting runs during render instead of in a client effect, so there's no loading skeleton and no highlight flash. Pair with keepBackground + a dark theme to render a flash-free dark terminal. Supported languages are fixed at build time (bash, go, java, javascript, json, python, sql, tsx, typescript, yaml); use DynamicCodeBlock for arbitrary languages. Grammar imports are side-effect-free, so DynamicCodeBlock-only consumers tree-shake them away.

bunx shadcn@latest add @redpanda/code-block-dynamic --overwrite
patch#181@c-julin

Fix the drawer panel being hidden behind its own overlay. The overlay and content were both z-50, so paint order depended on DOM order. A fast open/close toggle lets vaul remount the overlay after the content, flipping that order and letting the bg-black/80 overlay paint over the panel — greying the whole screen including the panel. The panel is now z-[60], so it always sits above its overlay regardless of mount order.

bunx shadcn@latest add @redpanda/drawer --overwrite

v1.5.0· 2026-05-27

patch#170@malinskibeniamin

Associate AutoForm select, multiselect, and toggle-group invalid states with their rendered error messages using aria-invalid and aria-describedby.

bunx shadcn@latest add @redpanda/auto-form @redpanda/multi-select --overwrite
minor#163@SpicyPete

Improve badge text/fill contrast for the Warning, Info, Destructive, and Success variants in both light and dark themes. Brand (Redpanda Red) tokens are intentionally untouched. Also refreshes the badge-variants demo to cover every color × style combination.

bunx shadcn@latest add @redpanda/badge @redpanda/button @redpanda/copy-button --overwrite
patch#171@malinskibeniamin

Add accessible names to Input icon-only controls and expose password reveal pressed state.

bunx shadcn@latest add @redpanda/input --overwrite
patch#174@SpicyPete

Show a pointer cursor on the trigger and vertically center the chevron when values are present. Stop the page from scrolling when the dropdown flips above the trigger by focusing the search input with preventScroll.

bunx shadcn@latest add @redpanda/multi-select --overwrite
patch#172@malinskibeniamin

Tighten React Doctor compatibility for registry components.

bunx shadcn@latest add @redpanda/code-block-dynamic @redpanda/dropdown-menu @redpanda/list-view @redpanda/stepper @redpanda/tags --overwrite
minor#169@eblairmckee

Upstreams five fixes and one feature that have been living as overrides in adp-ui:

bunx shadcn@latest add @redpanda/combobox @redpanda/checkbox @redpanda/textarea @redpanda/data-table-filter @redpanda/input @redpanda/auto-form --overwrite

v1.4.0· 2026-05-21

minor#155@SpicyPete

Add height controls and scroll-edge affordances to Dialog.

bunx shadcn@latest add @redpanda/dialog --overwrite
patch#164@malinskibeniamin

Restore stable full-width sidebar menu skeleton rows and remove randomized loading widths.

bunx shadcn@latest add @redpanda/sidebar --overwrite
patch#166@malinskibeniamin

Add regression coverage that ToggleGroup item state is derived without async act warnings.

bunx shadcn@latest add @redpanda/toggle-group --overwrite

v1.3.3· 2026-05-20

minor#154@jvorcak

Removes padding from ListLayout, so that it can be managed by an outer component

bunx shadcn@latest add @redpanda/list-layout --overwrite
minor#159@c-julin

Adds PrometheusIcon — the official Prometheus brand mark in its canonical orange (#e6522c), matching the other branded SVG icons (Python, Go, Java, Node, etc.).

bunx shadcn@latest add @redpanda/icons --overwrite
minor#158@c-julin

Three Sidebar tweaks:

bunx shadcn@latest add @redpanda/sidebar --overwrite
patch#162@SpicyPete

Removed the in/out animation on TabsContent (the y-translate + blur + opacity fade) and the height layout spring on TabsContents. Switching tabs now only animates the highlight on the trigger row — the panel swap is instant. TabsContent no longer accepts transition/motion props; TabsContents is a plain <div> wrapper. The trigger-row highlight now also respects prefers-reduced-motion and snaps instead of springing for users with that preference set.

bunx shadcn@latest add @redpanda/tabs --overwrite
minor#157@SpicyPete

Expanded underline-variant coverage across docs and playground (small, large, equal/full/gap layouts, count badges, icon-only, disabled-with-tooltip, as-links). Switched the docs ComponentPreview's Preview/Code switcher to the underline style. Fixed the disabled-tab styling that was silently dead: Base UI sets aria-disabled rather than the native disabled attribute, so the trigger now targets aria-disabled:* and the opacity-50 cue actually applies.

bunx shadcn@latest add @redpanda/tabs --overwrite
patch#161@SpicyPete

Fixes tooltip lingering after its anchor scrolls out of view by hiding the positioner (opacity-0 + pointer-events-none) when Base UI marks the anchor as hidden via data-anchor-hidden.

bunx shadcn@latest add @redpanda/tooltip --overwrite

v1.3.2· 2026-05-14

patch#152@malinskibeniamin

Security maintenance: bump Next.js and enforce patched runtime transitive versions for uuid, DOMPurify, and PostCSS after the May 2026 Snyk sweep.

bunx shadcn@latest add @redpanda/all --overwrite

v1.3.1· 2026-05-13

patch#150@malinskibeniamin

Security maintenance: refresh Mermaid and related lockfile metadata after the May 13, 2026 frontend supply-chain sweep.

bunx shadcn@latest add @redpanda/all --overwrite

v1.3.0· 2026-05-07

patch#148@SpicyPete

Render the Sonner Toaster into document.body via createPortal so toasts stay anchored to the viewport when the component is mounted inside federated consumer hosts or parents that establish a new containing block (e.g. overflow: hidden, CSS transform). Demos no longer mount their own <Toaster /> — they rely on the global one from RedpandaProvider. The registry now propagates @redpanda/sonner as a registry dependency for any item that imports toast from 'sonner', so CLI consumers continue to receive the styled Toaster they need to see those toasts.

bunx shadcn@latest add @redpanda/sonner --overwrite

v1.2.0· 2026-04-28

patch#133@SpicyPete

Pin shipped dependency floors to the version we develop against. Registry items now declare ranges like ^5.1.9 (the actual installed version) instead of collapsing to ^5.0.0, so consumers start on the known-tested baseline while caret semantics still allow any compatible release within the same major.

bunx shadcn@latest add @redpanda/all --overwrite
minor#129@SpicyPete

Add isLoading prop to Button. Renders a centered spinner overlay while preserving the button's natural width, blocks interaction, and sets aria-busy. New playground/docs demos showcase the state across variants and sizes.

bunx shadcn@latest add @redpanda/button --overwrite
patch#126@SpicyPete

Polish the Tabs active-indicator animation. The highlight now slides strictly along the tab strip's axis (left/right for horizontal tabs, up/down for vertical tabs) instead of drifting diagonally when tabs wrap onto multiple rows or reflow. Eliminates a small opacity flicker that occurred at the end of each tab switch.

bunx shadcn@latest add @redpanda/tabs --overwrite
minor#122@malinskibeniamin

Port the auto-form subsystem from ADP UI back to the registry.

bunx shadcn@latest add @redpanda/auto-form @redpanda/form-error-summary @redpanda/proto-field --overwrite
patch#140@SpicyPete

Tighten Base UI compat around Radix-parity edges:

bunx shadcn@latest add @redpanda/toggle-group @redpanda/dialog @redpanda/alert-dialog @redpanda/sheet @redpanda/dropdown-menu @redpanda/popover --overwrite
patch#134@SpicyPete

Fix Checkbox rendering a stuck checkmark on initial mount when checked={false}, and restore the indeterminate state visual. The checkmark and dash now animate in and out reliably in both controlled and uncontrolled modes.

bunx shadcn@latest add @redpanda/checkbox --overwrite
patch#131@SpicyPete

Center DialogFooter content by default.

bunx shadcn@latest add @redpanda/dialog --overwrite
patch#144@SpicyPete

Type inputRef as useRef<HTMLInputElement | null>(null) so the internal inputRef.current = node assignment compiles for consumers on @types/react@18 (which requires the MutableRefObject overload). No-op under React 19 types.

bunx shadcn@latest add @redpanda/editable-text --overwrite
patch#147@malinskibeniamin

Fix JSONField JSON editor highlighting so it does not depend on Prism's global JSON language side-effect import.

bunx shadcn@latest add @redpanda/json-field --overwrite
minor#136@SpicyPete

Rewrite NavigationMenu against Base UI's canonical Portal/Positioner/Popup/Viewport structure. Panels now open and animate correctly. NavigationMenuPositioner is exported with side/sideOffset/align/alignOffset. The viewport prop, the NavigationMenuViewport alias, and the no-op NavigationMenuIndicator have been removed along with the remaining Radix-era data-attribute shims.

bunx shadcn@latest add @redpanda/navigation-menu --overwrite
patch#128@SpicyPete

Cleaner, denser playground landing page for browsing component demos.

bunx shadcn@latest add @redpanda/all --overwrite
minor#125@SpicyPete

Add RedpandaProvider — a single root provider that wires up theming, motion configuration, and the toast surface for consumer apps. Animated registry components now respect the user's reduced-motion preference out of the box.

bunx shadcn@latest add @redpanda/redpanda-provider --overwrite
patch#132@SpicyPete

Finish the Select/MultiSelect migration to Base UI: drop the remaining --radix-select-* CSS variable shims, and fix SelectItem layout so icons or avatars sit inline with the label.

bunx shadcn@latest add @redpanda/select @redpanda/multi-select --overwrite
patch#139@SpicyPete

Close several consumer-facing gaps from the Base UI migration:

bunx shadcn@latest add @redpanda/select @redpanda/dropdown-menu --overwrite
patch#130@SpicyPete

Fix the playground Sidebar gallery: stack all 12 variants on one page using a CSS-contained preview frame instead of stacking fixed-positioned sidebars on top of each other. Drops an iframe-based prototype that was throttling framer-motion's tooltip opacity animation, which made disabled-item tooltips appear progressively more transparent on each hover.

bunx shadcn@latest add @redpanda/sidebar @redpanda/tooltip --overwrite
minor#137@eblairmckee

Add structured changelog page powered by changeset components metadata. Each registry-bumping changeset now declares the components it touches via a components: [...] line in its body; the docs site renders a filterable timeline at /docs/changelog plus a "Recent changes" panel auto-injected into each component's docs page.

bunx shadcn@latest add @redpanda/all --overwrite
patch#138@SpicyPete

Tighten Tabs underline variant spacing and improve active highlight positioning.

bunx shadcn@latest add @redpanda/tabs --overwrite
patch#146@SpicyPete

Fix the active highlight animating on both axes when surrounding layout shifts, and fix vertical orientation rendering. Horizontal groups now animate only left/right, vertical groups only up/down.

bunx shadcn@latest add @redpanda/toggle-group --overwrite

v1.1.0· 2026-04-27

minor#121@SpicyPete

Theme docs refresh, readability pass on semantic foregrounds, and consumer-facing Base UI regression fixes.

bunx shadcn@latest add @redpanda/all --overwrite
minor#119@SpicyPete

Bulk install experience and Dialog polish.

bunx shadcn@latest add @redpanda/alert-dialog @redpanda/dialog @redpanda/dropdown-menu @redpanda/menubar --overwrite

v1.0.0· 2026-04-22

minor#116@SpicyPete

Post-Base-UI polish. Public API unchanged.

bunx shadcn@latest add @redpanda/all --overwrite
major#114@malinskibeniamin

Migrate every Radix-based primitive to @base-ui/react@^1.4.0 (Base UI).

bunx shadcn@latest add @redpanda/all --overwrite

v0.3.1· 2026-04-17

patch#112@SpicyPete

🚧 Updated

bunx shadcn@latest add @redpanda/accordion @redpanda/alert-dialog @redpanda/breadcrumb @redpanda/checkbox @redpanda/collapsible @redpanda/command @redpanda/context-menu @redpanda/dialog @redpanda/drawer @redpanda/dropdown-menu @redpanda/group @redpanda/menubar @redpanda/navigation-menu @redpanda/popover @redpanda/radio-group @redpanda/select @redpanda/sheet @redpanda/sidebar @redpanda/toggle --overwrite

v0.3.0· 2026-04-16

minor#109@SpicyPete

Add theme-provider component to the registry with documentation and tests. Includes playground type improvements (export RegistryItem, remove as-const boilerplate) and docs site dark mode border color fix.

bunx shadcn@latest add @redpanda/all --overwrite
patch#108@malinskibeniamin

fix(data-table): show "Page 0 of 0" when table has no data instead of "Page 1 of 0" feat(protobuf-provider): add 'secretSelector' to ProtoFieldRenderType union feat(migrate): add remote migration script for fumadocs/cli to shadcn CLI conversion

bunx shadcn@latest add @redpanda/badge @redpanda/code-block-dynamic @redpanda/data-table @redpanda/field @redpanda/input @redpanda/proto-field --overwrite

v0.2.1· 2026-04-14

patch#102@malinskibeniamin

🚧 Updated

bunx shadcn@latest add @redpanda/alert-dialog --overwrite

v0.2.0· 2026-04-13

minor#100@sago2k8

✨ New

bunx shadcn@latest add @redpanda/combobox @redpanda/data-table @redpanda/data-table-filter @redpanda/dialog @redpanda/dropdown-menu @redpanda/multi-select @redpanda/sheet --overwrite

v0.1.0· 2026-04-13

minor#101@sago2k8

Initial release of the Redpanda UI Registry — a component distribution system built with React, TypeScript, and Tailwind CSS v4.

bunx shadcn@latest add @redpanda/all --overwrite
Built by malinskibeniamin. The source code is available on GitHub.