Account
Billing and license keys live in the customer portal run by Polar, our merchant of record. Keys are issued the moment a subscription starts and revoked the moment it ends.
The portal opens with Pro. Until then there is nothing to manage: the free tier has no account.
Using your key
# shell / CI
export MOONARC_KEY=<your key from the portal>{
"$schema": "https://ui.shadcn.com/schema.json",
"style": "new-york",
"rsc": false,
"tsx": true,
"tailwind": {
"config": "",
"css": "src/styles/global.css",
"baseColor": "neutral",
"cssVariables": true
},
"aliases": {
"components": "@/components",
"utils": "@/lib/utils",
"lib": "@/lib"
},
"registries": {
"@moonarc": "https://moonarc.dev/r/{name}.json",
"@moonarc-pro": {
"url": "https://moonarc.dev/r/pro/{name}.json",
"headers": {
"Authorization": "Bearer ${MOONARC_KEY}"
}
}
}
}An Astro project has no components.json. This one is all the shadcn CLI needs, and package.json stays as it is; shadcn init would add React. The copied files import one another through the @/* alias, so add it to tsconfig.json as Setup shows. The CLI reads the key from the environment or from .env.local; list .env.local in .gitignore if it is not there yet.
Then npx shadcn@latest add @moonarc-pro/hero-section. The section lands in src/components/moonarc/pro/, the free components it composes in src/components/moonarc/. The MCP server shows the Pro tools only when the key is set; get_usage tells you which plan it validated.
An agent starts the server with few of your environment variables, so a key exported in your shell may not reach it. The MCP page shows how Claude Code, Cursor, VS Code and Codex pass the key.
In CI
The audit and the measurement as commands, on every pull request. This is the point at which the subscription is infrastructure rather than a download.
- run: npx -y @moonarc/mcp audit src
- run: npx astro build
- run: npx -y @moonarc/mcp measure dist --ceiling 30000
env:
MOONARC_KEY: ${{ secrets.MOONARC_KEY }}Usage summary
Components installed, audits run, and the bytes you did not ship compared with the React equivalents. This arrives with the portal and will be the first thing on this page.