Founding price: $35, then $79.99 after 23:59 UTC on 4 November, then $79.99
Get Protealmac UI is a shadcn registry. Every item is a JSON file the shadcn CLI can read.
| Address | What it returns |
|---|---|
/r/registry.json | The registry index: every free item, without file content |
/r/<name>.json | One item with the full content of its files |
/r/themes/<id>.json | A colour theme as a registry:theme item |
/r/presets/<id>.json | A complete preset: colours, radius, font and tokens |
/r/pro/<name>.json | A Pro template or block (needs a licence key) |
/llms.txt, /llms-full.txt | The catalog as text for language models |
/mcp | The MCP server (see MCP tools) |
All addresses are on https://ui.tealmac.com. A request without the .json
extension redirects to it.
Register the namespaces in components.json to use short names:
{
"registries": {
"@tealmac": "https://ui.tealmac.com/r/{name}.json",
"@tealmac-pro": {
"url": "https://ui.tealmac.com/r/pro/{name}.json",
"headers": { "Authorization": "Bearer ${TEALMAC_UI_LICENSE_KEY}" }
}
}
}{name} is replaced by the CLI. ${TEALMAC_UI_LICENSE_KEY} is read from the
environment when the CLI runs. See Set up Pro.
Each item follows the shadcn registry item schema:
{
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
"name": "star-rating",
"type": "registry:ui",
"title": "Star Rating",
"description": "An accessible, keyboard-navigable star rating input.",
"dependencies": ["lucide-react"],
"registryDependencies": ["utils"],
"files": [
{
"path": "registry/ui/star-rating.tsx",
"type": "registry:ui",
"content": "\"use client\"\n…"
}
]
}| Field | Meaning |
|---|---|
name | Kebab-case identifier, used in the URL and the namespace |
type | registry:ui (component), registry:example, registry:lib, registry:theme, registry:block |
title, description | Shown by the CLI and the MCP server |
dependencies | npm packages the CLI installs |
registryDependencies | Other registry items to install first, by name or URL |
files | Source files; content holds the code, type decides where it goes |
cssVars | Theme variables for theme, light and dark |
| File type | Destination (from components.json aliases) |
|---|---|
registry:ui | components/ui |
registry:component | components |
registry:hook | hooks |
registry:lib | lib |
registry:page | The target path in the item |
Theme and preset items carry no files, only cssVars. The CLI merges them
into your global stylesheet:
{
"name": "theme-<id>",
"type": "registry:theme",
"cssVars": {
"light": { "radius": "0.625rem", "primary": "oklch(…)" },
"dark": { "primary": "oklch(…)" }
}
}Presets add font-sans and spacing or shadow tokens to the same structure.