mirror of
https://github.com/shadcn-ui/ui.git
synced 2026-07-08 06:28:37 +00:00
* feat: add github scheme * fix * fix: validate and search * docs: update docs for GitHub registries * docs: add changelog * fix * chore: update announcement * docs(skills): update GitHub registry guidance * fix(registry): reject option-like GitHub refs * fix(registry): limit search registry discovery * fix(registry): bound GitHub validation concurrency * fix(registry): reject whitespace in GitHub refs * fix(registry): track URL dependency sources * test(registry): cover local dependency sources
131 lines
3.4 KiB
Plaintext
131 lines
3.4 KiB
Plaintext
---
|
|
title: FAQ
|
|
description: Frequently asked questions about running a registry.
|
|
---
|
|
|
|
## Frequently asked questions
|
|
|
|
### What does a complex component look like?
|
|
|
|
Here's an example of a complex component that installs a page, two components, a hook, a format-date utils and a config file.
|
|
|
|
```json showLineNumbers
|
|
{
|
|
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
|
"name": "hello-world",
|
|
"title": "Hello World",
|
|
"type": "registry:block",
|
|
"description": "A complex hello world component",
|
|
"files": [
|
|
{
|
|
"path": "registry/new-york/hello-world/page.tsx",
|
|
"type": "registry:page",
|
|
"target": "app/hello/page.tsx"
|
|
},
|
|
{
|
|
"path": "registry/new-york/hello-world/components/hello-world.tsx",
|
|
"type": "registry:component"
|
|
},
|
|
{
|
|
"path": "registry/new-york/hello-world/components/formatted-message.tsx",
|
|
"type": "registry:component"
|
|
},
|
|
{
|
|
"path": "registry/new-york/hello-world/hooks/use-hello.ts",
|
|
"type": "registry:hook"
|
|
},
|
|
{
|
|
"path": "registry/new-york/hello-world/lib/format-date.ts",
|
|
"type": "registry:lib"
|
|
},
|
|
{
|
|
"path": "registry/new-york/hello-world/hello.config.ts",
|
|
"type": "registry:file",
|
|
"target": "~/hello.config.ts"
|
|
}
|
|
]
|
|
}
|
|
```
|
|
|
|
### How do I add a new Tailwind color?
|
|
|
|
To add a new color you need to add it to `cssVars` under `light` and `dark` keys.
|
|
|
|
```json showLineNumbers {10-18}
|
|
{
|
|
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
|
"name": "hello-world",
|
|
"title": "Hello World",
|
|
"type": "registry:block",
|
|
"description": "A complex hello world component",
|
|
"files": [
|
|
// ...
|
|
],
|
|
"cssVars": {
|
|
"light": {
|
|
"brand-background": "oklch(0.205 0.015 18)",
|
|
"brand-accent": "oklch(0.205 0.015 18)"
|
|
},
|
|
"dark": {
|
|
"brand-background": "oklch(0.205 0.015 18)",
|
|
"brand-accent": "oklch(0.205 0.015 18)"
|
|
}
|
|
}
|
|
}
|
|
```
|
|
|
|
The CLI will update the project CSS file. Once updated, the new colors will be available to be used as utility classes: `bg-brand` and `text-brand-accent`.
|
|
|
|
### Why does `button` in `registryDependencies` not resolve to my GitHub repository?
|
|
|
|
Bare registry dependency names keep the existing shadcn behavior. `button`
|
|
means the built-in shadcn `button` item.
|
|
|
|
For a dependency from a GitHub repository, use the full GitHub item address.
|
|
|
|
```json title="registry-item.json" showLineNumbers
|
|
{
|
|
"registryDependencies": ["acme/ui/button"]
|
|
}
|
|
```
|
|
|
|
### How do I pin a GitHub registry item?
|
|
|
|
Add `#ref` to the GitHub item address. The ref can be a branch, tag or full
|
|
commit SHA.
|
|
|
|
```bash
|
|
npx shadcn@latest add acme/ui/button#v1.2.0
|
|
```
|
|
|
|
For published registries, prefer tags or full commit SHAs.
|
|
|
|
### Can GitHub registry addresses use private repositories?
|
|
|
|
Not currently. GitHub registry addresses support public `github.com`
|
|
repositories. For private registries, use a namespace with authenticated URLs.
|
|
|
|
### How do I add or override a Tailwind theme variable?
|
|
|
|
To add or override a theme variable you add it to `cssVars.theme` under the key you want to add or override.
|
|
|
|
```json showLineNumbers {10-15}
|
|
{
|
|
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
|
"name": "hello-world",
|
|
"title": "Hello World",
|
|
"type": "registry:block",
|
|
"description": "A complex hello world component",
|
|
"files": [
|
|
// ...
|
|
],
|
|
"cssVars": {
|
|
"theme": {
|
|
"text-base": "3rem",
|
|
"ease-in-out": "cubic-bezier(0.4, 0, 0.2, 1)",
|
|
"font-heading": "Poppins, sans-serif"
|
|
}
|
|
}
|
|
}
|
|
```
|