Zetta v0.10

Components · Overlays

Hover card

A rich preview that appears when a pointer rests on a link or name — a profile, a file, a reference. It shares the popover surface and shadow-md elevation, capped at 320px. Because it is hover-only, treat everything inside as non-essential.

Preview

The card surface across the three themes. The framework anchors it to its trigger.

Light
AC
Ava Chen
Engineering · joined 2023

Working on the Zetta design system and this showcase.

Dark
AC
Ava Chen
Engineering · joined 2023

Working on the Zetta design system and this showcase.

Accessibility
AC
Ava Chen
Engineering · joined 2023

Working on the Zetta design system and this showcase.

Spec

Values and token references straight from the Zetta spec.

hover-card
backgroundColor
{colors.popover}
textColor
{colors.popover-foreground}
borderColor
{colors.hairline}
borderWidth
1px
borderRadius
{rounded.base}
shadow
{shadows.md}
padding
{spacing.md}
maxWidth
320px

Build with the skill

No package to install — hand this to your AI to generate the hover card in your stack.

Prompt for your AI
Implement the Zetta "Hover card" component in this project's stack using the zetta-design-md skill.

- Apply the `hover-card` spec from the skill (variants: default).
- Use this project's own component conventions and framework idioms.
- Reference the Zetta design tokens (CSS variables) for every color, radius, and shadow — never hardcode values.
- Implement all states (hover, focus, active, disabled, and invalid where applicable) with a visible 2px focus ring.
- Honor the Zetta guardrails (brand never shifts hue, shadows for overlays only, etc.) and verify in Light, Dark, and Accessibility.

Anatomy & rules

  • Popover surface, 1px hairline, base radius, shadow-md, medium padding, max-width 320px.
  • Hover-only and supplementary by definition — never hide essential information or the only path to an action behind it. Pair with a click affordance for touch and keyboard users.

Accessibility

  • Open on hover and focus with a short delay; dismiss on Escape and blur. Not a substitute for a real link or button.

Known gaps

  • Open/close delay timings and arrow/placement tokens are not specified.