# Popover

> An anchored panel on Base UI with a bordered arrow, title, description, corner close button and an optional footer strip, in three widths. It flips and shifts to stay on screen, moves focus in on open and back to the trigger on close. Shown as a Dimensions editor with a locked aspect ratio and presets, and a Share link panel with an access select and a copy field.

- Slug: `popover`
- Category: [Popovers](https://www.assembli.design/category/popovers.md)
- Type: component
- Tags: popover, panel, share, dimensions, anchored, base-ui
- npm dependencies: @base-ui/react, lucide-react
- shadcn/ui dependencies: none
- Live preview: https://www.assembli.design/preview/popover
- Page: https://www.assembli.design/components/popover

![Popover preview](https://www.assembli.design/thumbnails/popover-light.png)

## Install

One-time setup (needs a subscription):

1. Add the registry to the project's `components.json`: `{"@assembli":{"url":"https://www.assembli.design/r/{name}.json","headers":{"Authorization":"Bearer ${ASSEMBLI_API_KEY}"}}}` (merge into `"registries"`).
2. Put an API key from https://www.assembli.design/account in `.env.local` as `ASSEMBLI_API_KEY=asm_…`.

Then install with the shadcn CLI (writes `components/popover/popover.tsx` and installs dependencies):

```bash
npx shadcn@latest add @assembli/popover
```

Registry item JSON: https://www.assembli.design/r/popover.json (send `Authorization: Bearer <api key>`)

## Code

> Component source needs an Assembli subscription ($12/month or $96/year) and an API key sent as `Authorization: Bearer <key>`. To get one without copying anything, POST https://www.assembli.design/api/agent/login (or call the MCP tool connect_account), show the user the link it returns, and poll https://www.assembli.design/api/agent/token for the key. Or subscribe at https://www.assembli.design/pricing and create a key at https://www.assembli.design/account.
