v0.3.1 StableFoundation ComponentReact 18 & 19Zero Runtime CSS
Popover
An anchored, dismissible space for a focused task.
Interactive preview
Usage
import { Popover } from "@devvy-ui/react";
<Popover label="Project settings"><p>Workspace preferences</p></Popover>API reference
Native HTML attributes, className, style and a forwarded ref are supported. Component-specific props:
| Prop | Type | Default | Description |
|---|---|---|---|
| label | string | required | Trigger and panel name. |
| open / defaultOpen | boolean | false | Controlled or local visibility. |
| onOpenChange | (open: boolean) => void | — | Visibility callback. |
| trigger | ReactNode | label | Noninteractive trigger content. |
Accessibility & behavior
Platform Behavior & Guidelines
Portals to the document body after hydration. Keeps content inside the viewport, dismisses outside/Escape, and returns focus when appropriate. No modal focus trap.
Source ownership
Run npx @devvy-ui/cli init once in your React project, then add the source:
npx @devvy-ui/cli add popoverMake 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.
Popover.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.