# Woon > React 19 UI behavior primitives for dialogs, toasts, anchored overlays, and keyboard-accessible selection controls. Woon solves behavioral complexity: focus trapping, focus restoration, overlay stacking, anchored positioning, ARIA, keyboard navigation, and imperative APIs such as toast(), confirm(), and alert(). This file is for AI assistants. Use it as a short index, then read the full context when generating code. ## Full Context - [llms-full.txt](https://woon-ui.vercel.app/llms-full.txt): complete AI usage rules, package map, runtime notes, and code examples. ## Core Rules - Woon solves interaction behavior: focus trapping, focus restoration, anchored positioning, ARIA, keyboard navigation, overlay stacking, and imperative APIs. - Woon does not provide visual design-system components such as buttons, inputs, badges, or cards. - Prefer the CLI flow for app integration: `pnpm dlx @woon-ui/cli add dialog toast popover`. - React 19 and react-dom 19 are required peer dependencies. ## Start Here - [Introduction](https://woon-ui.vercel.app/docs): Project philosophy and component overview. - [Installation](https://woon-ui.vercel.app/docs/installation): CLI-first install flow, manual install, CSS imports, and TypeScript notes. - [Runtime Setup](https://woon-ui.vercel.app/docs/runtime-setup): DialogRuntime and Toaster root mounting rules. - [Adaptive Select Pattern](https://woon-ui.vercel.app/docs/patterns/adaptive-select): Composing Select and Drawer for device-appropriate selection UI. ## Components - [Dialog](https://woon-ui.vercel.app/docs/components/dialog): Use for modal surfaces that need focus trapping, focus restoration, escape handling, overlay stacking, and async result handling. Package: `@woon-ui/dialog`. - [Alert](https://woon-ui.vercel.app/docs/components/dialog/alert): Use for imperative acknowledgement dialogs that can be called outside the component tree. Package: `@woon-ui/dialog`. - [Confirm](https://woon-ui.vercel.app/docs/components/dialog/confirm): Use for imperative confirmation flows, including async loading/success/error steps. Package: `@woon-ui/dialog`. - [Toast](https://woon-ui.vercel.app/docs/components/toast): Use for transient feedback that can be triggered from event handlers, async functions, or utilities outside the component tree. Package: `@woon-ui/toast`. - [Drawer](https://woon-ui.vercel.app/docs/components/drawer): Use for edge-attached modal surfaces with focus management, overlay behavior, and optional drag-to-close. Package: `@woon-ui/drawer`. - [Tooltip](https://woon-ui.vercel.app/docs/components/tooltip): Use for hover/focus/tap supplemental information with collision-aware positioning and delay control. Package: `@woon-ui/tooltip`. - [Popover](https://woon-ui.vercel.app/docs/components/popover): Use for trigger-attached floating content with outside-click dismissal, escape handling, collision-aware positioning, and optional focus trapping. Package: `@woon-ui/popover`. - [Dropdown Menu](https://woon-ui.vercel.app/docs/components/dropdown-menu): Use for trigger-attached command menus with keyboard navigation, typeahead, disabled items, and automatic close-on-select. Package: `@woon-ui/dropdown-menu`. - [Context Menu](https://woon-ui.vercel.app/docs/components/context-menu): Use for right-click or long-press contextual menus with keyboard navigation, typeahead, and disabled item handling. Package: `@woon-ui/context-menu`. - [Select](https://woon-ui.vercel.app/docs/components/select): Use for accessible custom select controls with controlled/uncontrolled value, keyboard navigation, grouping, disabled items, and anchored positioning. Package: `@woon-ui/select`. - [Combobox](https://woon-ui.vercel.app/docs/components/combobox): Use for searchable selection controls with separate inputValue/value state, keyboard navigation, grouping, and optional freeForm input. Package: `@woon-ui/combobox`.