Heading fonts

Choose a Google Fonts family. The selected font loads from Google Fonts; Inter and Geist Serif are bundled locally.

Search Reflow

Keyboard shortcuts

Use these keys while you are not typing in a field.

Search⌘K
Cycle themeT
Cycle accentA
Cycle heading fontF
Cycle radiusR
Cycle sizeS
Cycle iconsI
Cycle hoverH
Toggle navigation[
Toggle properties]
Previous / next demo slide←→
Show shortcuts?
Skip to content
Open navigationClose navigation

Make them yours

Theme
SystemT
Accent
BlueA
Heading font
InterF
Radius
RoundedR
Size
DefaultS
Icons
LucideI
Hover
FluidH

Playground variant

Sidebar

Sidebar

Resizable workspace navigation with collapsible sections and a modal drawer on small screens.

Installation

Import from the Reflow workspace package.

Playground

Open demo

Settings

General
Notifications
Appearance
Security
Members

General

Workspace name, language, and region.

Language

Used for the interface and emails.

English
Français
Deutsch
日本語
Timezone

Dates and reminders follow it.

(UTC−8) Pacific
(UTC−5) Eastern
(UTC+0) London
(UTC+1) Paris
(UTC+9) Tokyo

Layouts

3 layout options: default, floating to elevate the sidebar in a higher surface, inset to make your content stand out.

Sidebar
Floating
Inset

Nesting

2 levels of nesting, one section level and one parent level. A row without an href folds its children.

Actions & badges

Status dots on threads, counts, and a hover-revealed action on every row.

Callouts

Aurora 2 is here

A smarter way to work

Keyboard shortcuts

Move faster through your day

Motion guidelines

Three spring tiers, one page

Stacked inlines

Aurora 2 is here

A smarter way to work

Keyboard shortcuts

Move faster through your day

Motion guidelines

Three spring tiers, one page

Stacked banners

Resize, collapse & peek

Drag the edge to resize, click it or press [ to collapse. Reveal the collapsed rail on hover or click.

Inside a dialog

Settings

General
Notifications
Appearance
Security
Members

General

Workspace name, language, and region.

Language

Used for the interface and emails.

English
Français
Deutsch
日本語
Timezone

Dates and reminders follow it.

(UTC−8) Pacific
(UTC−5) Eastern
(UTC+0) London
(UTC+1) Paris
(UTC+9) Tokyo

No icon rail version?

Collapsed navigation reveals full labels and nesting on demand. The icon-only collapsed mode is intentionally unsupported.

Icon rail · one tooltip at a time
Peek on hover · both sections and all six labels

Functional and perfectly aligned

Guides are measured from the rendered header, footer, and action icons.

Measured icon axes

Workspace composition

Switch workspaces, navigate nested projects, create a project, and open profile settings. The preview keeps its own local state.

Acme Inc / InboxFree

Inbox

New project

Your team has shared three updates.

Make room for more

Profile settings

Workspace plan

Choose a plan for this local preview.

Free

For personal projects

Pro

For growing teams

API Reference

Public props for the Reflow implementation. Native controls also accept their standard HTML attributes and Remix event mixes.

Sidebar

PropTypeDefaultDescription
sections*readonly SidebarSection[]—Navigation groups and their items.
activeHrefstring—URL of the active navigation item.
headerRemixNode—Content above the navigation.
footerRemixNode—Footer content or actions.
toolbarRemixNode—Breadcrumbs or actions alongside the built-in navigation button.
children*RemixNode—Content rendered inside the component.
labelstringWorkspaceAccessible name or visible label for the control.
variant"default" | "floating" | "inset"—Visual or layout treatment.
defaultWidthnumber220Initial sidebar width in pixels.
minWidthnumber160Minimum sidebar width in pixels.
maxWidthnumber380Maximum sidebar width in pixels.
defaultCollapsedboolean—Starts with the navigation collapsed.
peek"none" | "hover" | "click"—Temporarily reveals the collapsed rail from its edge. Escape/outside press dismiss; Pin sidebar expands it.
fixedboolean—Renders a fixed rail without resizing or collapsing controls.
searchableboolean—Enables filtering.
onWidthChange((width: number) => void)—Called after the sidebar is resized.
calloutRemixNode—Additional content below sidebar navigation.

SidebarSection

PropTypeDefaultDescription
collapsibleboolean—Set false for a static section heading.
labelstring—Heading for this navigation group.
items*readonly SidebarItem[]—Items and their content.
defaultCollapsedboolean—Starts the navigation group collapsed.
actionsRemixNode—Actions displayed beside the message or composer.

SidebarItem

PropTypeDefaultDescription
label*string—Accessible name or visible label for the control.
href*string—Destination of the navigation link.
badgeRemixNode—Small status or count displayed with a navigation item.
iconRemixNode—Icon content.
onClick((event: MouseEvent) => void)—Optional click handler for application navigation.
childrenreadonly SidebarItem[]—Nested navigation items.
defaultExpandedboolean—Initial expansion state of the nested navigation.
actionsRemixNode—Actions displayed beside the message or composer.