Manifest
A ⌘K command palette: a spring-seated glass search box over a scrim with a fuzzy-filtered, keyboard-driven list of grouped commands and pages. A shared-layout pill slides between rows, matched substrings ignite to full contrast, and rows with children push a nested page in from the right. Full combobox a11y, focus trap, ⌘K/Ctrl-K toggle, and controlled open.
motionpro
Pro
The preview is live. The source is Pro.
One purchase, lifetime access: every pro component's source, CLI install with your own registry token, and all future drops.
Installation
CLI
npx shadcn@latest add @crucible/manifestManual — install dependencies, then copy the source
npm install motionProps
| Prop | Type | Default | Description |
|---|---|---|---|
| items | ManifestItem[] | Root command/page list. | |
| open | boolean | Controlled open state. Pair with onOpenChange. | |
| defaultOpen | boolean | false | Initial open state when uncontrolled. |
| onOpenChange | (open: boolean) => void | Fires whenever the palette opens or closes, controlled or not. | |
| trigger | React.ReactNode | Element that opens the palette on click (uncontrolled convenience). Controlled callers can drive open and omit this. | |
| hotkey | string | false | "k" | Single key that, with ⌘ (mac) or Ctrl, toggles the palette. Set false to disable the global hotkey. |
| placeholder | string | "Type a command or search…" | Search input placeholder. |
| emptyMessage | React.ReactNode | "No results" | Shown when nothing matches. |
| label | string | "Command palette" | Accessible label for the dialog. |
| footer | React.ReactNode | Footer hint row content. Pass null to hide it. | |
| maxVisible | number | 50 | Hard cap on rendered rows per page — long lists are sliced. |
| container | HTMLElement | null | document.body (fixed, full-viewport, scroll-locked). Pass a stage element for previews | Portal target (must be a positioned element). |
Also accepts all props of Omit<React.ComponentPropsWithoutRef<"div">, "onSelect"> — they pass through to the underlying element. | |||
Honors prefers-reduced-motion with a designed static fallback, and passes className through.