home / skills / onmax / nuxt-skills / nuxt-modules
This skill helps you build, test, and publish Nuxt modules using defineNuxtModule patterns, Kit utilities, and CI/CD workflows.
npx playbooks add skill onmax/nuxt-skills --skill nuxt-modulesReview the files below or copy the command above to add this skill to your agents.
---
name: nuxt-modules
description: "Use when creating Nuxt modules: (1) Published npm modules (@nuxtjs/, nuxt-), (2) Local project modules (modules/ directory), (3) Runtime extensions (components, composables, plugins), (4) Server extensions (API routes, middleware), (5) Releasing/publishing modules to npm, (6) Setting up CI/CD workflows for modules. Provides defineNuxtModule patterns, Kit utilities, hooks, E2E testing, and release automation."
license: MIT
---
# Nuxt Module Development
Guide for creating Nuxt modules that extend framework functionality.
**Related skills:** `nuxt` (basics), `vue` (runtime patterns)
## Quick Start
```bash
npx nuxi init -t module my-module
cd my-module && npm install
npm run dev # Start playground
npm run dev:build # Build in watch mode
npm run test # Run tests
```
## Available Guidance
- **[references/development.md](references/development.md)** - Module anatomy, defineNuxtModule, Kit utilities, hooks
- **[references/testing-and-publishing.md](references/testing-and-publishing.md)** - E2E testing, best practices, releasing, publishing
- **[references/ci-workflows.md](references/ci-workflows.md)** - Copy-paste CI/CD workflow templates
**Load based on context:**
- Building module features? → [references/development.md](references/development.md)
- Testing or publishing? → [references/testing-and-publishing.md](references/testing-and-publishing.md)
- CI workflow templates? → [references/ci-workflows.md](references/ci-workflows.md)
## Module Types
| Type | Location | Use Case |
| --------- | ---------------- | -------------------------------- |
| Published | npm package | `@nuxtjs/`, `nuxt-` distribution |
| Local | `modules/` dir | Project-specific extensions |
| Inline | `nuxt.config.ts` | Simple one-off hooks |
## Project Structure
```
my-module/
├── src/
│ ├── module.ts # Entry point
│ └── runtime/ # Injected into user's app
│ ├── components/
│ ├── composables/
│ ├── plugins/
│ └── server/
├── playground/ # Dev testing
└── test/fixtures/ # E2E tests
```
## Resources
- [Module Guide](https://nuxt.com/docs/guide/going-further/modules)
- [Nuxt Kit](https://nuxt.com/docs/api/kit)
- [Module Starter](https://github.com/nuxt/starter/tree/module)
This skill helps you create, test, and publish Nuxt modules for both local projects and npm packages. I provide patterns for defineNuxtModule, Kit utilities, runtime and server extension placement, E2E testing guidance, and release/CI workflow templates. It accelerates module development and standardizes publishing steps.
I inspect your module type and suggest the appropriate structure and workflow: published npm modules, local modules in a modules/ directory, inline config-based hooks, runtime/runtime extensions (components, composables, plugins), and server extensions (API routes, middleware). I also guide you through testing (fixtures and E2E) and generating CI/CD templates for automated builds and releases.
How do I structure files for runtime vs server code?
Put injected app code (components, composables, plugins) under runtime/ and server handlers under runtime/server/. Keep module entry logic in src/module.ts.
What commands speed up development?
Use npx nuxi init -t module to scaffold, then npm run dev for playground, npm run dev:build for build-watch, and npm run test for running tests.