Install a Free theme
Only three unmodified catalog themes have public registry install URLs. They do not require an account or activation:
- Modern · Claret —
system-modern-default-theme - Kids' Sketchbook · Original —
system-kids-sketchbook-original-theme - Neobrutalism · Original —
system-neobrutalism-original-theme
For example:
npx shadcn@latest add https://shads.app/r/system-modern-default-theme.json
Install another catalog theme
All 122 catalog themes are open to explore and customize. To install one that is not tagged Free, sign in and save it to your library, then open Get theme and use its shadcn CLI, shads CLI, MCP, or agent-prompt instructions. Its first install activates it. Free includes three lifetime activations; an activated theme installs any number of times, and deleting it does not refund the activation.
The public catalog item path for a non-Free theme returns 403. Do not configure an API-key registry or use an @shadsapp registry namespace. The saved theme's Get theme instructions use a keyless URL such as https://shads.app/r/u-<token>.json; the unguessable token itself is the credential, so keep the URL private.
CLI and agent installs
The shads CLI accepts your account API key with shads login; shads whoami checks the active account. The same account key can be used by MCP clients. Registry requests still use the keyless u-<token> saved-theme URL, not the API key.
For icon-pack projects, follow the additional migration command printed by Get theme. See the CLI guide and MCP guide.