Installation
Two forms of one command. Both put the same files in your repo.
Before you start
A project shadcn's CLI has set up: components.json at the root, Tailwind 4 in the stylesheet. npx shadcn@latest init does that from nothing.
GitHub form
pnpm dlx shadcn@latest add tradecn/ui/data-grid#v1.4.13
npx shadcn@latest add tradecn/ui/data-grid#v1.4.13
yarn dlx shadcn@latest add tradecn/ui/data-grid#v1.4.13
bunx --bun shadcn@latest add tradecn/ui/data-grid#v1.4.13
Pin the tag. The tag is the version. There is no npm package.
Namespace form
Point a namespace at tradecn.dev in components.json:
{
"registries": {
"@tradecn": "https://tradecn.dev/r/{name}.json"
}
}
pnpm dlx shadcn@latest add @tradecn/data-grid
npx shadcn@latest add @tradecn/data-grid
yarn dlx shadcn@latest add @tradecn/data-grid
bunx --bun shadcn@latest add @tradecn/data-grid
That URL is the latest release. Put the tag in it to pin: https://tradecn.dev/r/v1.4.13/{name}.json. Same files either way.
Updating
Two commands. Neither touches the other's files. Put the tag you're moving to in the first one.
pnpm dlx shadcn@latest add tradecn/ui/data-grid#v1.4.13 --diff # a tradecn change
pnpm dlx shadcn@latest add tooltip --diff # a shadcn change underneath
npx shadcn@latest add tradecn/ui/data-grid#v1.4.13 --diff # a tradecn change
npx shadcn@latest add tooltip --diff # a shadcn change underneath
yarn dlx shadcn@latest add tradecn/ui/data-grid#v1.4.13 --diff # a tradecn change
yarn dlx shadcn@latest add tooltip --diff # a shadcn change underneath
bunx --bun shadcn@latest add tradecn/ui/data-grid#v1.4.13 --diff # a tradecn change
bunx --bun shadcn@latest add tooltip --diff # a shadcn change underneath
Every item at once
The namespace form takes a list. This is every item at v1.4.13:
pnpm dlx shadcn@latest add @tradecn/format @tradecn/row-store @tradecn/flash-cell @tradecn/data-grid @tradecn/feed-health @tradecn/use-hotkeys @tradecn/command-palette @tradecn/panel @tradecn/sparkline @tradecn/watchlist @tradecn/blotter @tradecn/workspace @tradecn/ticket @tradecn/countdown @tradecn/quote-field @tradecn/rfq-ticket @tradecn/rfq-stack @tradecn/perf-monitor @tradecn/hotkey-editor @tradecn/column-chooser @tradecn/rules-editor @tradecn/alerts @tradecn/status-bar @tradecn/parameter-grid @tradecn/positions @tradecn/audit-trail @tradecn/layout-manager @tradecn/instrument-search @tradecn/depth-ladder @tradecn/spread-matrix @tradecn/quote-panel @tradecn/session-guard @tradecn/price-chart @tradecn/grid-rules @tradecn/preferences @tradecn/alert-store @tradecn/session-calendar @tradecn/limits @tradecn/window-set @tradecn/tradecn-amber @tradecn/tradecn-slate @tradecn/tradecn-slate-east
npx shadcn@latest add @tradecn/format @tradecn/row-store @tradecn/flash-cell @tradecn/data-grid @tradecn/feed-health @tradecn/use-hotkeys @tradecn/command-palette @tradecn/panel @tradecn/sparkline @tradecn/watchlist @tradecn/blotter @tradecn/workspace @tradecn/ticket @tradecn/countdown @tradecn/quote-field @tradecn/rfq-ticket @tradecn/rfq-stack @tradecn/perf-monitor @tradecn/hotkey-editor @tradecn/column-chooser @tradecn/rules-editor @tradecn/alerts @tradecn/status-bar @tradecn/parameter-grid @tradecn/positions @tradecn/audit-trail @tradecn/layout-manager @tradecn/instrument-search @tradecn/depth-ladder @tradecn/spread-matrix @tradecn/quote-panel @tradecn/session-guard @tradecn/price-chart @tradecn/grid-rules @tradecn/preferences @tradecn/alert-store @tradecn/session-calendar @tradecn/limits @tradecn/window-set @tradecn/tradecn-amber @tradecn/tradecn-slate @tradecn/tradecn-slate-east
yarn dlx shadcn@latest add @tradecn/format @tradecn/row-store @tradecn/flash-cell @tradecn/data-grid @tradecn/feed-health @tradecn/use-hotkeys @tradecn/command-palette @tradecn/panel @tradecn/sparkline @tradecn/watchlist @tradecn/blotter @tradecn/workspace @tradecn/ticket @tradecn/countdown @tradecn/quote-field @tradecn/rfq-ticket @tradecn/rfq-stack @tradecn/perf-monitor @tradecn/hotkey-editor @tradecn/column-chooser @tradecn/rules-editor @tradecn/alerts @tradecn/status-bar @tradecn/parameter-grid @tradecn/positions @tradecn/audit-trail @tradecn/layout-manager @tradecn/instrument-search @tradecn/depth-ladder @tradecn/spread-matrix @tradecn/quote-panel @tradecn/session-guard @tradecn/price-chart @tradecn/grid-rules @tradecn/preferences @tradecn/alert-store @tradecn/session-calendar @tradecn/limits @tradecn/window-set @tradecn/tradecn-amber @tradecn/tradecn-slate @tradecn/tradecn-slate-east
bunx --bun shadcn@latest add @tradecn/format @tradecn/row-store @tradecn/flash-cell @tradecn/data-grid @tradecn/feed-health @tradecn/use-hotkeys @tradecn/command-palette @tradecn/panel @tradecn/sparkline @tradecn/watchlist @tradecn/blotter @tradecn/workspace @tradecn/ticket @tradecn/countdown @tradecn/quote-field @tradecn/rfq-ticket @tradecn/rfq-stack @tradecn/perf-monitor @tradecn/hotkey-editor @tradecn/column-chooser @tradecn/rules-editor @tradecn/alerts @tradecn/status-bar @tradecn/parameter-grid @tradecn/positions @tradecn/audit-trail @tradecn/layout-manager @tradecn/instrument-search @tradecn/depth-ladder @tradecn/spread-matrix @tradecn/quote-panel @tradecn/session-guard @tradecn/price-chart @tradecn/grid-rules @tradecn/preferences @tradecn/alert-store @tradecn/session-calendar @tradecn/limits @tradecn/window-set @tradecn/tradecn-amber @tradecn/tradecn-slate @tradecn/tradecn-slate-east