Menus & navigation
All menus share one MenuItem model (label, icon, command, url, items, separator, shortcut). They follow the WAI-ARIA menu and menubar patterns, with type-ahead and arrow keys that mirror in right-to-left layouts.
10 components on this page. Every demo is live — change the theme in the header or flip a demo to right-to-left with its RTL button. 9 of them are React-only for now; Vue, Svelte and Angular versions are coming.
Dock Link to Dock
A macOS-style launcher with icon magnification.
Launched: none
Code
ReactComing to Vue, Svelte and Angular.
<Dock aria-label="Apps" model={[
{ label: 'Finder', icon: '📁' }, { label: 'Mail', icon: '✉️' }, { label: 'Music', icon: '🎵' },
]} /> SplitButton Link to SplitButton
A primary action with a menu of related secondary actions.
Last action: none
Code
ReactComing to Vue, Svelte and Angular.
<SplitButton label="Save" onClick={save} model={[
{ label: 'Save as draft', command: saveDraft },
{ label: 'Save and publish', command: publish },
]} /> SpeedDial Link to SpeedDial
A floating action button that fans out related actions in a line or circle.
Created: none
Code
ReactComing to Vue, Svelte and Angular.
<SpeedDial aria-label="Create" direction="up" model={[
{ label: 'Note', icon: '📝' }, { label: 'Photo', icon: '📷' }, { label: 'Link', icon: '🔗' },
]} /> Breadcrumb Link to Breadcrumb
Shows where the current page sits in the site hierarchy.
Code
<Breadcrumb items={[{ label: 'Home', href: '/' }, { label: 'Projects', href: '/projects' }, { label: 'Pelagic UI' }]} /> <Breadcrumb :items="trail" /> <Breadcrumb items={trail} /> <Breadcrumb items={trail} /> <Breadcrumb items={[{ label: 'Home', onPress: goHome }, { label: 'Pelagic UI' }]} />