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

CommandMenu

CommandMenu

Filter and invoke grouped actions with pointer or keyboard navigation.

Installation

Import from the Reflow workspace package.

Playground

Open demo
CalendarToday
New fileBlank documentCtrlN
SettingsAccount and workspaceCtrl,
Search everywhereFiles, people, messagesCtrlShiftF
Toggle dark modeSystem, light, or darkCtrlShiftL
Copy linkTo this pageCtrlShiftC
Invite peopleSend an email invite
Export as PDFPro plan
Home
Inbox3 unread
Starred
RecentLast 7 days
Documentation
What's newRelease notes
Contact supportReply within a day
Select ↑↓Tabs ←→Go to CalendarEnter

Basic

Type to filter, press ↓ ↑ to move, Enter to run. Rows come from items, grouped by group.

New file
Search everywhere
Toggle dark mode
Copy link
Invite people
Export as PDF
Home
Inbox
Calendar
Starred
Recent
Settings
Documentation
What's new
Contact support

Descriptions, shortcuts, disabled rows

3 more fields per row: description, shortcut caps, and disabled, which the arrows skip. Type clipboard: keywords match too.

New fileBlank documentCtrlN
Search everywhereFiles, people, messagesCtrlShiftF
Toggle dark modeSystem, light, or darkCtrlShiftL
Copy linkTo this pageCtrlShiftC
Invite peopleSend an email invite
Export as PDFPro plan
Home
Inbox3 unread
CalendarToday
Starred
RecentLast 7 days
SettingsAccount and workspaceCtrl,
Documentation
What's newRelease notes
Contact supportReply within a day

Suggestions

3 suggested rows lead until you type 1 letter, then the groups take over.

CalendarToday
New fileBlank documentCtrlN
SettingsAccount and workspaceCtrl,
Search everywhereFiles, people, messagesCtrlShiftF
Toggle dark modeSystem, light, or darkCtrlShiftL
Copy linkTo this pageCtrlShiftC
Invite peopleSend an email invite
Export as PDFPro plan
Home
Inbox3 unread
Starred
RecentLast 7 days
Documentation
What's newRelease notes
Contact supportReply within a day

Tabs

Click a tab or press ← →, and the rows follow. Controls hug the end of the row beneath the field.

New fileBlank documentCtrlN
Search everywhereFiles, people, messagesCtrlShiftF
Toggle dark modeSystem, light, or darkCtrlShiftL
Copy linkTo this pageCtrlShiftC
Invite peopleSend an email invite
Export as PDFPro plan
Home
Inbox3 unread
CalendarToday
Starred
RecentLast 7 days
SettingsAccount and workspaceCtrl,
Documentation
What's newRelease notes
Contact supportReply within a day

Filters

A compact, borderless row under the field for selects or ghost buttons; the list divider closes it.

All types
Actions
Go to
Help
Default order
A to Z
New fileBlank documentCtrlN
Search everywhereFiles, people, messagesCtrlShiftF
Toggle dark modeSystem, light, or darkCtrlShiftL
Copy linkTo this pageCtrlShiftC
Invite peopleSend an email invite
Export as PDFPro plan
Home
Inbox3 unread
CalendarToday
Starred
RecentLast 7 days
SettingsAccount and workspaceCtrl,
Documentation
What's newRelease notes
Contact supportReply within a day

Dialog and trigger shortcut

Press the combo anywhere on the page. A pick or Escape closes it.

Command menu

CalendarToday
New fileBlank documentCtrlN
SettingsAccount and workspaceCtrl,
Search everywhereFiles, people, messagesCtrlShiftF
Toggle dark modeSystem, light, or darkCtrlShiftL
Copy linkTo this pageCtrlShiftC
Invite peopleSend an email invite
Export as PDFPro plan
Home
Inbox3 unread
Starred
RecentLast 7 days
Documentation
What's newRelease notes
Contact supportReply within a day

Custom rows

renderItem replaces the row content; the icon and caps stay in your hands.

New fileActionsCtrlN
Search everywhereActionsCtrlShiftF
Toggle dark modeActionsCtrlShiftL
Copy linkActionsCtrlShiftC
Invite peopleActions
Export as PDFActions
HomeGo to
InboxGo to
CalendarGo to
StarredGo to
RecentGo to
SettingsGo toCtrl,
DocumentationHelp
What's newHelp
Contact supportHelp

API Reference

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

CommandMenu

PropTypeDefaultDescription
items*readonly CommandItem[]—Items and their content.
renderItem((item: CommandItem) => RemixNode)—Replaces the label and description of a row. The icon and shortcut caps stay.
footerRemixNode | boolean—true shows the key hints that follow the menu; a node replaces them. Omitted, there is no footer.
suggestionsreadonly string[]—Command values listed first, under suggestionsLabel, while nothing is typed.
suggestionsLabelstring—Heading of the suggestions group. Defaults to Suggestions.
controlsRemixNode—Compact controls (ghost selects or buttons) in a row under the field, or at the end of the tab row.
emptyMessagestring—Shown when nothing matches. Defaults to No results.
labelstringCommand menuAccessible name or visible label for the control.
placeholderstringType a command or search…Hint shown while the value is empty.
filtersreadonly string[]—Group names to expose as filters. Left and Right switch filters from the search field.
triggerRemixNode—Supply a trigger to open the menu in a modal.
inDialogboolean—Enable dialog focus and dismissal hints when supplying your own dialog.
shortcutboolean | string—The combo that toggles a modal menu: true or omitted is Mod+K, a string such as mod+p sets another, false binds nothing.
onSelect((value: string) => void)—Called when an item is selected.

CommandItem

PropTypeDefaultDescription
value*string—Identifier passed to onSelect when the command is invoked.
label*string—Accessible name or visible label for the control.
descriptionstring—Additional explanatory text.
groupstring—Label used to group related items.
keywordsreadonly string[]—Additional terms matched by search.
disabledboolean—Prevents interaction and conveys the disabled state.
shortcutstring—Visible keyboard hint. The consumer registers the action shortcut.
iconRemixNode—Icon content.