# Panel Tab Switcher

https://fieldbook.lizardi.mx/components/panel-tab-switcher

Category: Navigation
![Still of the Panel Tab Switcher component, a Fieldbook UI component in Navigation.](https://fieldbook.lizardi.mx/thumbs/panel-tab-switcher.webp)
Preview video: https://ejpqcxcjbiyabxkx.public.blob.vercel-storage.com/previews/panel-tab-switcher-4ab2be196b.mp4 (5 s, silent)

Panel Tab Switcher: A rounded tab bar where a background indicator morphs to the active tab's exact size and position, revealing a distinct content panel beneath it.

## Frameworks

react, vue, svelte, astro, html

## Preview controls

These controls are passed to the demo. Defaults and limits describe the preview; consult the implementation for its full prop API.

| Name | Type | Default | Options or constraints |
| --- | --- | --- | --- |
| accentColor | color | #9BE15D | No additional limit in the metadata. |
| variant | select | filled | Options: filled, underline |
| tabCount | number | 3 | From 2 to 5; step 1 |

## Usage notes

Panel Tab Switcher uses the card preview frame with a light/dark theme setting.

### Which frameworks are available for Panel Tab Switcher?

Panel Tab Switcher is available for React, Vue, Svelte, Astro, HTML. The live preview uses React; the source observations below apply to index.tsx. Check the selected port before relying on the same interactions.

### What does Panel Tab Switcher depend on?

The React metadata lists these npm dependencies beyond React: motion, clsx.

### What accessibility details are visible in Panel Tab Switcher?

The React source for Panel Tab Switcher includes: native elements (button); attributes and handlers (aria-controls, aria-hidden, aria-label, aria-labelledby, aria-selected, onKeyDown, tabIndex); explicit roles (tab, tablist, tabpanel); key comparisons (ArrowLeft, ArrowRight, End, Home). These are source observations. Verify accessible names, focus order and keyboard behavior in the composed page.

### How does Panel Tab Switcher handle reduced motion?

Panel Tab Switcher reads the motion preference in its React source through matchMedia(prefers-reduced-motion). Check the full implementation, shared styles and selected port with reduced motion enabled; these observations do not establish that every animation stops.

## Install through MCP

Connect your client, call get_component to retrieve the implementation, then get_install_command for installation instructions. Choose a listed framework, integrate the returned source and verify it in your application.

```json
{
  "tool": "get_component",
  "arguments": {
    "slug": "panel-tab-switcher",
    "framework": "react"
  }
}
```

[For agents](https://fieldbook.lizardi.mx/docs/agents)
[MCP](https://fieldbook.lizardi.mx/api/mcp)

## Related open components

- [Auto height tabs](https://fieldbook.lizardi.mx/components/auto-height-tabs)
- [Card blur tabs](https://fieldbook.lizardi.mx/components/card-blur-tabs)
- [Sliding Panel Tabs](https://fieldbook.lizardi.mx/components/sliding-panel-tabs)
- [View mode toggle switch](https://fieldbook.lizardi.mx/components/view-mode-toggle-switch)
- [Bubble burst menu](https://fieldbook.lizardi.mx/components/bubble-burst-menu)
- [Chameleon pill navbar](https://fieldbook.lizardi.mx/components/chameleon-pill-navbar)
