The install page covers the first component. This guide covers the rest.
The shadcn CLI runs from any package runner and installs dependencies with the package manager your lockfile points to.
pnpm dlx shadcn@latest add https://ui.tealmac.com/r/marquee.json
Register the namespace once in components.json:
{
"registries": {
"@tealmac": "https://ui.tealmac.com/r/{name}.json"
}
}Then use short names, and see what's available from the terminal:
pnpm dlx shadcn@latest add @tealmac/tag-input npx shadcn@latest search @tealmac --query "input" npx shadcn@latest view @tealmac/tag-input
Pass as many names or URLs as you like. Shared dependencies install once.
pnpm dlx shadcn@latest add @tealmac/otp-input @tealmac/password-strength @tealmac/stepper
view prints the item's JSON, including every file it will write and every
package it will install, without touching your project:
pnpm dlx shadcn@latest view https://ui.tealmac.com/r/globe.json
Every component page has a Manual tab with the full source. Copy it into
components/ui/<name>.tsx, install the npm packages listed on the page, and
fix the import paths if your aliases differ from @/components and @/lib.
The CLI follows the aliases in components.json. In a monorepo, run it from
the package that owns your UI (or pass --cwd):
pnpm dlx shadcn@latest add @tealmac/marquee --cwd packages/ui
To put one item somewhere else, use --path:
pnpm dlx shadcn@latest add @tealmac/marquee --path src/components/effects
ui and utils aliases in
components.json match your tsconfig.json paths.npx shadcn@latest init, or install a theme.--overwrite only when you mean to replace your copy.