vue-blocks-registry is a modular system for Vue 3 projects that combines UI components, functional features, and complete page bundles into reusable building blocks.
It's inspired by shadcn-vue, but goes beyond UI — providing ready-to-use logic, stores, routes, and API layers.
You can use it to quickly assemble new projects or standardize architecture across multiple apps.
# Initialize your project
npx vue-blocks-registry init
# Add a component
npx vue-blocks-registry add button
# Add an authentication feature (store, service, composables)
npx vue-blocks-registry add authFeat
# Add a full ready-to-use auth module (pages + routes + logic)
npx vue-blocks-registry add authFull📦 Available on npm: vue-blocks-registry
# Add a component
npx vue-blocks-registry add button
# Add an authentication feature (store, service, composables)
npx vue-blocks-registry add authFeat
# Add a full ready-to-use auth module (pages + routes + logic)
npx vue-blocks-registry add authFull- components/ – UI primitives (buttons, inputs, dialogs)
- features/ – functional units (auth, billing, user profile)
- bundles/ – full flows (login pages, dashboards, onboarding)
- templates/ – complete app starters
# Install globally (optional)
npm install -g vue-blocks-registry
# Or use directly with npx (recommended)
npx vue-blocks-registry init# Initialize project configuration
vue-blocks-registry init
# Add components/features/bundles
vue-blocks-registry add <name>
# List available items
vue-blocks-registry list
# Get help
vue-blocks-registry --helpThe CLI automatically detects and uses the package manager in your project:
- pnpm (detected by
pnpm-lock.yaml) - yarn (detected by
yarn.lock) - npm (detected by
package-lock.jsonor as fallback)
When you run vue-blocks-registry add <component>, it will:
- Detect your package manager
- Install any required dependencies using the appropriate command
- Copy component files to your project
No need to worry about having the "wrong" package manager installed!
Contributions are welcome! Please read our Contributing Guide for details.
This project is licensed under the MIT License - see the LICENSE file for details.
