# Dropdown Menu
> Menu of actions behind a trigger.
Import from `@aspyn-io/kit`. Scaffold source: `npx shadcn@latest add https://design.aspyn.io/r/dropdown-menu.json`
## Install
```tsx
import {
DropdownMenu,
DropdownMenuTrigger,
DropdownMenuContent,
DropdownMenuItem,
DropdownMenuLabel,
DropdownMenuSeparator,
DropdownMenuShortcut,
} from "@aspyn-io/kit";
```
### Account menu
```tsx
you@aspyn.ioProfile
Settings
⌘,Sign out
```
### Row actions
The table "kebab" pattern: an icon-only trigger with aria-label.
```tsx
View detailsDuplicateDelete
```
### Submenu
Nest related actions behind a DropdownMenuSub trigger.
```tsx
EditMove to…InboxArchiveSpamDelete
```
### Checkbox items
Toggle independent options in place. Each item keeps its own checked state.
```tsx
const [showTimeline, setShowTimeline] = React.useState(true);
const [showBacklog, setShowBacklog] = React.useState(false);
Panels
Timeline
Backlog
```
### Radio group
Pick a single value from a set with DropdownMenuRadioGroup.
```tsx
const [sort, setSort] = React.useState("recent");
Most recentOldestName
```
### With icons
Lead each item with an icon; the menu sizes and tints SVGs automatically.
```tsx
Profile
Settings
Sign out
```
## Notes
- Full keyboard support: arrows navigate, Enter selects, Escape closes, typeahead jumps to items.