Documentation Index
Fetch the complete documentation index at: https://docs.mercurjs.com/llms.txt
Use this file to discover all available pages before exploring further.
The Mercur CLI (@mercurjs/cli@latest) manages your marketplace project — creating projects, installing blocks, generating types, and checking for updates.
Installation
bun add -g @mercurjs/cli@latest
Commands
create
Scaffold a new Mercur project from a template.
bunx @mercurjs/cli@latest create my-marketplace
The CLI will prompt you for database credentials and install dependencies automatically.
| Option | Description |
|---|
-t, --template <template> | Template to use (default: basic) |
--no-deps | Skip dependency installation |
--skip-db | Skip database configuration |
--db-connection-string <string> | PostgreSQL connection string |
init
Initialize an existing project by creating a blocks.json configuration file.
bunx @mercurjs/cli@latest init
This sets up path aliases so the CLI knows where to place blocks in your project:
{
"aliases": {
"api": "packages/api/src",
"vendor": "apps/vendor/src",
"admin": "apps/admin/src"
}
}
| Option | Description |
|---|
-d, --defaults | Use default paths without prompting |
-s, --silent | Suppress output |
add
Install blocks from the registry into your project.
bunx @mercurjs/cli@latest add wishlist
bunx @mercurjs/cli@latest add product-review order-tracking
Blocks are copied directly into your project as source code. The CLI resolves dependencies, transforms imports to match your path aliases, and installs required packages.
| Option | Description |
|---|
-o, --overwrite | Overwrite existing files |
-y, --yes | Skip confirmation |
-s, --silent | Suppress output |
search
Find available blocks in the registry.
bunx @mercurjs/cli@latest search --query wishlist
| Option | Description |
|---|
-q, --query <query> | Search by name or description |
-r, --registry <registry> | Registry to search (default: @mercurjs) |
view
Display detailed information about a block.
bunx @mercurjs/cli@latest view wishlist
diff
Compare local blocks against registry versions to check for updates.
bunx @mercurjs/cli@latest diff wishlist
If there are changes you want, update with:
bunx @mercurjs/cli@latest add wishlist --overwrite
codegen
Generate TypeScript types from your API routes. Used by the API Client for type-safe requests.
bunx @mercurjs/cli@latest codegen
| Option | Description |
|---|
-w, --watch | Watch for changes and regenerate automatically |
registry:build
Build a custom registry from a registry.json file.
bunx @mercurjs/cli@latest build
| Option | Description |
|---|
-o, --output <path> | Output directory (default: ./r) |
-v, --verbose | Show detailed output |
info
Display project configuration and diagnostics.
bunx @mercurjs/cli@latest info
telemetry
Control anonymous usage data collection.
bunx @mercurjs/cli@latest telemetry --disable
bunx @mercurjs/cli@latest telemetry --enable
Custom registries
Add custom block registries to your blocks.json:
{
"registries": {
"@mercurjs": "https://registry.mercurjs.com/{name}",
"@my-registry": "https://my-registry.com/blocks/{name}.json"
}
}
Use {name} as a placeholder for block names. Reference custom registries with the -r flag:
bunx @mercurjs/cli@latest search --query review --registry @my-registry