fetaUI
GitHub

Stack Panel

A settings panel that drills into pages and back. Swipe back reveals the parent underneath.

FreeWeb and MobileMotion

Preview

npx shadcn add @fetaui/stack-panel
Playground

Settings

Appearance

Appearance

Theme

Density

Notifications

Notifications

Mentions
Failed deploys
Weekly digest

Only failed deploys get through during quiet hours.

Account

Account

NameMaya Chen
Emailmaya@acme.com
Icons animation
Motion

Installation

Terminal· bash
 npx shadcn add @fetaui/stack-panel

Accessibility

  • Each page is a region labelled by its title.
  • After a push, focus moves to the new heading. After a pop, it returns to the row.
  • Choice rows are radios.

Motion

  • Pages push in over 340 ms while the parent slides 18% left.
  • Back reverses in 300 ms.
  • Swipe from the left edge follows the finger. Past 40% or a flick pops.
  • With reduced motion, pages swap. A swipe still follows the finger, without parallax.

Responsive behavior

  • 384 wide on Web and 358 on Mobile. Rows are 44 and 52 px.

Performance

  • Only the current page renders, plus its parent as an inert layer under a swipe.
  • Swipe back is one motion value, so dragging re-renders nothing until it settles.

Note for AI

Give your coding assistant the Markdown reference instead of screenshots.

  • Import StackPanel from @/components/fetaui/stack-panel after installing it. pages and root are required.
  • Rows are link, choice, switch, value or danger. A link's to must be a key in pages.
  • Switch rows report through onChange and danger rows through onSelect. Choice rows report through onChoiceChange with the group and row id.
  • onPathChange reports the path, and defaultPath starts deeper in. Composes Button and Switch.

Related