shadcnthemes
All tools

Build a multi-theme switcher for shadcn/ui

Pick several shadcn/ui themes and install them all at once, with a ready-made theme picker, a hook and a no-flash script, using a single shadcn CLI command.

Loading themes…

How it works

  1. 1

    Choose the themes your users can pick from. The first one becomes the default.

  2. 2

    Preview switching between them live, in light and dark mode.

  3. 3

    Download one registry file and run npx shadcn add on it: every theme is scoped to a data-theme attribute in globals.css, and a picker, hook and no-flash script are added to your project.

FAQ

Does it work with dark mode?

Yes. Each theme ships light and dark values, and the dark class from next-themes combines with the data-theme attribute.

Can I theme just part of a page?

Yes. Put data-theme on any element and everything inside it uses that theme. That's handy for previews or multi-tenant branding.

How do I add more themes later?

Rebuild the file with the extra themes and run the command again, or copy another theme's variables into a new [data-theme] block.

More tools