Docs/Registry

Registry

Every installable item is valid shadcn-vue registry JSON, built from the import graph in packages/registry.

Namespace

components.json

{
  "registries": {
    "@pdfcn-vue": "https://pdfcn-vue.vercel.app/r/{name}.json"
  }
}

Install commands

Terminal

npx shadcn-vue@latest add @pdfcn-vue/pdfcn-core

Terminal

npx shadcn-vue@latest add @pdfcn-vue/theme-minimal

Terminal

npx shadcn-vue@latest add @pdfcn-vue/invoice-minimal

Core items

ItemTypeDescription
pdfcn-corelibTheme types, resolve-color, style helpers, default professional theme.
theme-providercomponentPdfcnThemeProvider for provide/inject theming.
theme-*libNine presets: professional, modern, minimal, executive, corporate, elegant, vivid, forest, blueprint.
block-sharedlibFormatters and ReportLayout shared by report and invoice blocks.

Catalog size

24 components
Primitives, layout, data, and page chrome.
20 blocks
Invoices, reports, ops, comms, and education templates.

registryDependencies are derived from real imports, so installing a block pulls tables, chrome, and theme helpers for you.

Hosting

Serve /r/*.json as application/json and allow CORS for browser clients. This repo ships apps/website/public/_headers for Cloudflare Pages.

Build with vp run registry:build and optionally set PDFCN_VUE_REGISTRY_BASE so dependency URLs match production.

Edit the theme tokens

Try the theme builder