The theme control - a chip in the live palette opens a grid of miniatures, one per palette and side. Persists the choice, follows the OS, no flash on load.
ThemeSwitcher playground
The chip in the header is this component. Both read and write the site's own theme, so a pick here turns the whole page and stays open to compare; arrow keys walk the grid, Enter or Escape closes it. The transition knobs set the site's ZyncatTheme, so every theme change runs the chosen effect until the page reloads.
Install ThemeSwitcher
1. New project? One command installs the package and wires everything - see Installation:
pnpm dlx zyncat-ui init2. Import the component - it loads its own stylesheet:
import { ThemeSwitcher } from '@zyncat/ui/theme-switcher';Usage
import { ThemeSwitcher } from '@zyncat/ui/theme-switcher'; <ThemeSwitcher labels={{ default: 'Zyncat', ember: 'Ember', iris: 'Iris' }} align="end" />Compose ThemeSwitcher in your application. No Tailwind or external styling library is required; every value resolves from Zyncat UI's token vocabulary.