mirror of
https://github.com/shadcn-ui/ui.git
synced 2026-07-02 17:08:39 +00:00
* docs(www): namespaced registries * fix * docs(www): add cli command to docs * fix * docs(www): update registry docs * feat(shadcn): add mcp init command * docs: restructure mcp docs * chore: add changesets * fix: formatting * fix(shadcn): dependencies * debug * fix * docs: add more troubleshooting docs * docs: update registry docs * feat(shadcn): add audit checklist tool * chore: add mcp flag * fix: format * docs: replace beta with latest * docs: add changelog * fix
100 lines
2.3 KiB
Plaintext
100 lines
2.3 KiB
Plaintext
---
|
|
title: registry.json
|
|
description: Schema for running your own component registry.
|
|
---
|
|
|
|
The `registry.json` schema is used to define your custom component registry.
|
|
|
|
```json title="registry.json" showLineNumbers
|
|
{
|
|
"$schema": "https://ui.shadcn.com/schema/registry.json",
|
|
"name": "shadcn",
|
|
"homepage": "https://ui.shadcn.com",
|
|
"items": [
|
|
{
|
|
"name": "hello-world",
|
|
"type": "registry:block",
|
|
"title": "Hello World",
|
|
"description": "A simple hello world component.",
|
|
"registryDependencies": [
|
|
"button",
|
|
"@acme/input-form",
|
|
"https://example.com/r/foo"
|
|
],
|
|
"dependencies": ["is-even@3.0.0", "motion"],
|
|
"files": [
|
|
{
|
|
"path": "registry/new-york/hello-world/hello-world.tsx",
|
|
"type": "registry:component"
|
|
}
|
|
]
|
|
}
|
|
]
|
|
}
|
|
```
|
|
|
|
## Definitions
|
|
|
|
You can see the JSON Schema for `registry.json` [here](https://ui.shadcn.com/schema/registry.json).
|
|
|
|
### $schema
|
|
|
|
The `$schema` property is used to specify the schema for the `registry.json` file.
|
|
|
|
```json title="registry.json" showLineNumbers
|
|
{
|
|
"$schema": "https://ui.shadcn.com/schema/registry.json"
|
|
}
|
|
```
|
|
|
|
### name
|
|
|
|
The `name` property is used to specify the name of your registry. This is used for data attributes and other metadata.
|
|
|
|
```json title="registry.json" showLineNumbers
|
|
{
|
|
"name": "acme"
|
|
}
|
|
```
|
|
|
|
### homepage
|
|
|
|
The homepage of your registry. This is used for data attributes and other metadata.
|
|
|
|
```json title="registry.json" showLineNumbers
|
|
{
|
|
"homepage": "https://acme.com"
|
|
}
|
|
```
|
|
|
|
### items
|
|
|
|
The `items` in your registry. Each item must implement the [registry-item schema specification](https://ui.shadcn.com/schema/registry-item.json).
|
|
|
|
```json title="registry.json" showLineNumbers
|
|
{
|
|
"items": [
|
|
{
|
|
"name": "hello-world",
|
|
"type": "registry:block",
|
|
"title": "Hello World",
|
|
"description": "A simple hello world component.",
|
|
"registryDependencies": [
|
|
"button",
|
|
"@acme/input-form",
|
|
"https://example.com/r/foo"
|
|
],
|
|
"dependencies": ["is-even@3.0.0", "motion"],
|
|
"files": [
|
|
{
|
|
"path": "registry/new-york/hello-world/hello-world.tsx",
|
|
"type": "registry:component"
|
|
}
|
|
]
|
|
}
|
|
]
|
|
}
|
|
```
|
|
|
|
See the [registry-item schema documentation](/docs/registry/registry-item-json) for more information.
|