Skip to main content
Gremorie

Gremorie CLI

Scaffold registry items into your project. One binary, three commands.

The Gremorie CLI is how primitives land in your project. It reads the registry, resolves cross-item dependencies, detects your framework, and writes the source where you expect it.

It does not download a package. The files become yours: edit them, own them, commit them.

Install

The CLI runs via your package runner. No global install is required.

npx gremorie@latest <command>
pnpm dlx gremorie@latest <command>
yarn dlx gremorie@latest <command>
bunx gremorie@latest <command>

Commands

init

Initialize Gremorie in a project. Detects your package manager, installs the core dependencies (the tokens and framework core packages plus class-variance-authority, clsx, and tailwind-merge), adds the theme import to your global stylesheet, and prints the next steps.

npx gremorie@latest init

Flags:

  • --dry-run -- print what would be installed and written without touching anything

add <items...>

Install one or more registry items, plus any cross-item dependencies.

npx gremorie@latest add ng-prompt-input ng-conversation ng-message

Flags:

  • --framework <angular|react> -- override detection (e.g. install a React primitive into a project the CLI labeled as Angular)
  • --dry-run -- print the files that would be written without writing them

list

Print every primitive available in the registry, grouped by category.

npx gremorie@latest list

Use this to discover what is shippable today. The output mirrors the Components catalog.

Framework auto-detection

When you run add without --framework, the CLI inspects your package.json:

  • @angular/core present -> Angular edition (ng-*)
  • react present -> React edition (rx-*)
  • Both present (e.g. monorepo) -> CLI prompts which one

You can pass --framework to skip the prompt in CI or scripts.

Output paths

Each registry item declares its own target path, and the CLI writes the source there:

  • React items -- src/components/gremorie/<category>/<name>/ (e.g. src/components/gremorie/forms/button/button.tsx)
  • Angular items -- src/app/gremorie/<name>/ (e.g. src/app/gremorie/button/button.ts)

The files become part of your project; move them and update the imports if you prefer a different layout.

Source

The CLI source lives in packages/cli on GitHub. PRs welcome -- see Contributing.

On this page