v0.3.1 StableFoundation ComponentReact 18 & 19Zero Runtime CSS

Drawer

A native modal panel at a logical viewport edge.

Interactive preview

Workspace details

Project information and settings.

Workspace
Orbit
Plan
Team

Usage

import { Drawer } from "@devvy-ui/react";

<Drawer title="Workspace details" open={open} onOpenChange={setOpen} side="end"><p>Project information</p></Drawer>

API reference

Native HTML attributes, className, style and a forwarded ref are supported. Component-specific props:

PropTypeDefaultDescription
sidestart / end / bottomendLogical panel edge.
Dialog propsDialogPropsrequiredContent, visibility, names and focus.

Accessibility & behavior

Platform Behavior & Guidelines

Composes Dialog rather than adding another focus trap. Native Escape, explicit return-focus refs and the inline unsupported-browser fallback remain available.

Source ownership

Run npx @devvy-ui/cli init once in your React project, then add the source:

npx @devvy-ui/cli add drawer

Make the source yours.

Start from the canonical implementation used by the package and registry. Change the code, keep the MIT notice, and build the behavior your project needs.

Drawer.tsxREACT / TSX

Edit your own copy. Downloaded source uses your changes; the component preview above uses the shipped version. Run the source installer first to include shared helpers.