Core UI
Side Drawer Panel
The house data-entry surface — right-docked drawer on desktop, three-snap-point draggable bottom sheet on mobile, with focus trap and a dock-minimise control.
$ velocityx add side-drawer-panel
Built for react.
Needs react already installed
as a peer dependency.
An Astro-only project needs @astrojs/react wired up first — this won't run on its own in plain Astro.
Full docs for Side Drawer Panel →
Needs a licence key —
subscribe here, then
velocityx loginonce.
Props
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
| open | boolean | Yes | ||
| onClose | () => void | Yes | ||
| onCollapse | (() => void)? | Yes | shows a "minimise to dock" control when set | |
| title | string | Yes | ||
| subtitle | string? | Yes | ||
| children | ReactNode | Yes | form body | |
| footer | ReactNode? | Yes | sticky action row (Save/Cancel) | |
| snaps | [number, number, number] | No | [0.18, 0.55, 0.92] | mobile snap fractions |
File this creates
The CLI writes this path into your project, relative to its root — nothing else moves.
components/velocity/side-drawer-panel/SideDrawerPanel.jsx Using the Side Drawer Panel component
Install it with velocityx add side-drawer-panel.
The CLI writes the source straight into your project — no runtime dependency, no registry
lock-in, and it themes itself from the same primary-*/accent-* scale as the rest of the library.
Related components
More from Core UI.
Expand/collapse FAQ list with measured-height animation, single or multi-open modes, and arrow-key navigation between headers.
reactFloating button that fades in past a scroll threshold and scrolls to top, instantly under reduced motion.
reactBottom consent bar with accept-all, reject-all, and an inline expandable preferences checklist, persisted to localStorage.
reactScrollable data table with a sticky header row and client-side column sorting that cycles ascending, descending, and unsorted.
react