| name | create-docs |
| description | Create a complete documentation site for any project.
Use when asked to:
"create docs", "add documentation", "set up a docs site", "generate documentation",
"document this project", "write docs", "initialize docs",
"add docs folder", "scaffold a documentation site".
ไธบไปปไฝ้กน็ฎๅๅปบๅฎๆด็ๆๆกฃ็ฝ็ซใๅฝ่ขซ่ฆๆฑๆถไฝฟ็จๆญคๆ่ฝ๏ผ
"ๅๅปบๆๆกฃ", "ๆทปๅ ๆๆกฃ", "ๅปบ็ซๆๆกฃ็ฝ็ซ", "็ๆๆๆกฃ",
"ๆๆกฃๅ้กน็ฎ", "็ผๅๆๆกฃ", "ๅๅงๅๆๆกฃ",
"ๆทปๅ ๆๆกฃๆไปถๅคน", "ๅๅปบๆๆกฃ็ฝ็ซ"ใ
Generates a Movk Nuxt Docs based site with search, dark mode, MCP server, and llms.txt integration.
|
Create Docs
Generate a complete, production-ready documentation site for any project.
Workflow
- Analyze โ Detect package manager, monorepo layout, and read project context.
- Initialize โ Scaffold the docs directory with the right settings.
- Generate โ Author documentation pages from templates.
- Configure โ Set up AI integration (MCP, llms.txt).
- Finalize โ Provide next steps and the correct commands.
Package Manager Reference
Detect from the lock file. Default to npm if no lock file is found:
| Lock file | PM | Install | Run | Add |
|---|
pnpm-lock.yaml | pnpm | pnpm install | pnpm run | pnpm add |
package-lock.json | npm | npm install | npm run | npm install |
yarn.lock | yarn | yarn install | yarn | yarn add |
bun.lockb | bun | bun install | bun run | bun add |
Use [pm] as the placeholder in the commands below.
Step 1: Analyze the Project
Detect Project Structure
Check:
โโโ pnpm-workspace.yaml โ pnpm monorepo
โโโ turbo.json โ Turborepo monorepo
โโโ lerna.json โ Lerna monorepo
โโโ nx.json โ Nx monorepo
โโโ apps/ โ apps directory (monorepo)
โโโ packages/ โ packages directory (monorepo)
โโโ docs/ โ existing documentation (avoid overwriting)
โโโ README.md โ primary documentation source
โโโ src/ or lib/ โ source code location
Determine the Docs Location
| Project type | Target directory | Workspace entry |
|---|
| Standard project | ./docs | N/A |
Monorepo with apps/ | ./apps/docs | apps/docs |
Monorepo with packages/ | ./docs | docs |
Existing docs/ folder | Ask the user, or use ./documentation | โ |
Read Context Files
| File | Extract |
|---|
README.md | Project name, description, features, usage examples |
package.json | Name, description, dependencies, repository URL |
src/ or lib/ | Exported functions and composables for API docs |
Step 2: Initialize the Docs
Create the Directory Structure
npx nuxi init -t gh:mhaibaraai/movk-nuxt-docs/templates/default my-docs
npx nuxi init -t gh:mhaibaraai/movk-nuxt-docs/templates/module my-module-docs
npx nuxi init -t gh:mhaibaraai/movk-nuxt-docs/templates/i18n my-docs
Full template
[docs-location]/
โโโ app/
โ โโโ composables/
โ โโโ useCategory.ts # Navigation category definitions
โ โโโ useHeader.ts # Header navigation links
โโโ content/
โ โโโ index.md # Landing page
โ โโโ docs/
โ โโโ 1.getting-started/
โ โโโ .navigation.yml
โ โโโ 1.index.md
โ โโโ 2.installation.md
โโโ public/
โ โโโ favicon.ico
โ โโโ icon.svg
โโโ .editorconfig
โโโ .env.example
โโโ .gitignore
โโโ .vscode/
โ โโโ settings.json
โโโ eslint.config.mjs
โโโ nuxt.config.ts
โโโ package.json
โโโ pnpm-workspace.yaml
โโโ tsconfig.json
Module template
[docs-location]/
โโโ app/
โ โโโ composables/
โ โโโ useCategory.ts
โ โโโ useHeader.ts
โโโ content/
โ โโโ index.md
โ โโโ releases.yml
โ โโโ docs/
โ โโโ 1.getting-started/
โ โโโ .navigation.yml
โ โโโ 1.index.md
โ โโโ 2.installation.md
โโโ public/
โ โโโ favicon.ico
โ โโโ icon.svg
โโโ .env.example
โโโ nuxt.config.ts
โโโ package.json
โโโ tsconfig.json
Multilingual (i18n) template
Default locale content stays at the content/ root (no prefix); other locales live under content/{locale}/ (prefixed). @nuxtjs/i18n is preconfigured with zh-CN (default) and en.
[docs-location]/
โโโ app/
โ โโโ composables/
โ โโโ useCategory.ts
โ โโโ useHeader.ts # Uses localePath() for locale-aware links
โโโ content/
โ โโโ index.md # Default locale (zh-CN) home โ /
โ โโโ docs/ # Default locale docs โ /docs/*
โ โ โโโ 1.getting-started/
โ โ โโโ .navigation.yml
โ โ โโโ 1.index.md
โ โ โโโ 2.installation.md
โ โโโ en/ # English content
โ โโโ index.md # English home โ /en
โ โโโ docs/ # English docs โ /en/docs/*
โ โโโ 1.getting-started/
โ โโโ .navigation.yml
โ โโโ 1.index.md
โ โโโ 2.installation.md
โโโ public/
โโโ nuxt.config.ts # modules: ['@nuxtjs/i18n'] + i18n.locales
โโโ package.json # includes @nuxtjs/i18n
โโโ tsconfig.json
Update Monorepo Configuration (if applicable)
pnpm Monorepo
- Add the docs package to the workspace and configure
onlyBuiltDependencies (required by better-sqlite3):
packages:
- 'apps/*'
- 'docs'
onlyBuiltDependencies:
- better-sqlite3
- Add a development script to the root
package.json:
{
"scripts": {
"docs:dev": "pnpm run --filter [docs-package-name] dev"
}
}
Or use a directory path:
{
"scripts": {
"docs:dev": "cd docs && pnpm dev"
}
}
npm/yarn Monorepo
{
"workspaces": ["apps/*", "docs"],
"scripts": {
"docs:dev": "npm run dev --workspace=docs"
}
}
Step 3: Generate Documentation
Use the templates in references/templates.md.
Critical: MDC component naming
Every Nuxt UI component used inside MDC must keep the u- prefix:
| Correct | Incorrect |
|---|
::u-page-hero | ::page-hero |
::u-page-section | ::page-section |
:::u-page-feature | :::page-feature |
:::u-button | :::button |
::::u-page-card | ::::page-card |
Without the u- prefix, Vue cannot resolve these components.
Documentation Layout
content/
โโโ index.md # Landing page
โโโ 1.getting-started/
โ โโโ .navigation.yml
โ โโโ 1.introduction.md
โ โโโ 2.installation.md
โโโ 2.guide/
โ โโโ .navigation.yml
โ โโโ 1.configuration.md
โ โโโ 2.authentication.md
โ โโโ 3.deployment.md
โโโ 3.api/ # If applicable
โโโ .navigation.yml
โโโ 1.reference.md
Page Generation
- Landing page (
index.md) โ Hero + feature grid.
- Introduction โ What and why, plus use cases.
- Installation โ Prerequisites and install commands.
- Guide pages โ Feature documentation with action-oriented H2 headings.
For writing style, see references/writing-guide.md.
For MDC components, see references/mdc-components.md.
Step 4: Configure AI Integration
Movk Nuxt Docs ships with the MCP server (/mcp) and llms.txt generation enabled by default. No configuration is required.
Do not add an "AI Integration" section to the landing page. These features work automatically.
Optionally mention them on the introduction page:
::note
This documentation includes AI integration through an MCP server and automatic `llms.txt` generation.
::
Load references/configuration.md for detailed configuration options.
Step 5: Author Agent Skills (Advanced)
When the project has specific workflows (code review, release process, content style checks, etc.), author Agent Skills for the docs site so AI agents can understand and execute those workflows directly. Skills are auto-published to the /.well-known/skills/ endpoint, and tools such as Claude Code and Cursor can discover and load them automatically.
Directory Structure
Create a skills/ folder under the docs directory:
[docs-location]/
โโโ skills/
โโโ my-skill/
โโโ SKILL.md # Required: frontmatter + workflow description
โโโ references/ # Optional: detailed reference docs
โ โโโ checklist.md
โโโ assets/ # Optional: templates and example assets
โโโ template.md
SKILL.md Template
---
name: my-skill
description: |
One-sentence description of what this skill does.
Use when asked to:
"trigger phrase 1", "trigger phrase 2", "trigger phrase 3".
---
# My Skill
A brief statement of the skill's goal and where it applies.
## Workflow
1. **Step One** โ What to do.
2. **Step Two** โ What to do.
3. **Step Three** โ What to do.
---
## Step One
Detailed instructions...
Frontmatter Fields
| Field | Required | Description |
|---|
name | Yes | kebab-case, must match the directory name exactly, โค64 characters |
description | Yes | Functional description plus trigger phrases. The AI uses these phrases to decide when to invoke the skill. |
Trigger-phrase style:
description: |
Review Vue component code for performance, accessibility, and best practices.
Use when asked to:
"review component", "check the code", "code review",
"audit Vue", "analyze component quality".
Reference File Organization
Keep the main SKILL.md lean (โค500 lines). Put detailed rules, checklists, and templates under references/, then link to them from the main file:
See [references/checklist.md](./references/checklist.md) for details.
Naming Validation
Full Example: release-check
---
name: release-check
description: |
Verify the project meets release criteria before publishing.
Use when asked to:
"check release readiness", "prepare a release", "release check",
"validate release", "pre-release check".
---
# Release Check
Ensure the project meets every quality requirement before release.
## Workflow
1. **Code quality** โ Run lint and type checks.
2. **Version number** โ Verify the version field is updated.
3. **Changelog** โ Confirm CHANGELOG entries exist.
4. **Build verification** โ Run the production build and verify the output.
---
## Step 1: Code Quality
Run the following commands and confirm they all pass:
\`\`\`bash
pnpm lint
pnpm typecheck
\`\`\`
## Step 2: Version Number
Check that the `version` field in `package.json` matches the release version.
## Step 3: Changelog
Confirm `CHANGELOG.md` has an entry at the top for the current version with all major changes.
## Step 4: Build Verification
\`\`\`bash
pnpm build
\`\`\`
After a successful build, confirm the `.output/` directory is not empty.
Step 6: Finalize
Provide instructions using the detected package manager.
Standard Project
Documentation created at [docs-location]
To start:
cd [docs-location]
[pm] install
[pm] run dev
Available at http://localhost:3000
Monorepo
Documentation created at [docs-location]
From the repo root:
[pm] install
[pm] run docs:dev
Or from the docs directory:
cd [docs-location]
[pm] run dev
Available at http://localhost:3000
Included Features
- Full-text search
- Dark mode
- MCP server for AI tools (
/mcp)
- LLM integration (
/llms.txt)
- SEO optimization
- GitHub integration
- Automatic component documentation
Next Steps
- Review the generated content.
- Verify frontmatter completeness.
- Check MDC syntax correctness.
- Evaluate content clarity and SEO.
- Validate structure and navigation.
- Deploy to Vercel / Netlify / Cloudflare.
Suggested Follow-ups
After the docs are created, suggest enhancements:
Your documentation is ready!
Would you like me to:
- **Customize the UI** โ match your brand colors and style
- **Enhance the landing page** โ add feature cards, code previews, visual polish
- **Set up deployment** โ deploy to Vercel, Netlify, or Cloudflare
Let me know what you'd like to improve!
Deployment
| Platform | Command | Output |
|---|
| Vercel | npx vercel --prod | Auto-detected |
| Netlify | [pm] run generate | .output/public |
| Cloudflare Pages | [pm] run generate | .output/public |
| GitHub Pages | [pm] run generate | .output/public |
Example: auth-utils
Detected: pnpm monorepo, packages live under packages/.
Generated structure:
docs/
โโโ content/
โ โโโ index.md
โ โโโ 1.getting-started/
โ โ โโโ .navigation.yml
โ โ โโโ 1.introduction.md
โ โ โโโ 2.installation.md
โ โโโ 2.guide/
โ โ โโโ .navigation.yml
โ โ โโโ 1.authentication.md
โ โ โโโ 2.oauth-providers.md
โ โ โโโ 3.sessions.md
โ โโโ 3.api/
โ โโโ .navigation.yml
โ โโโ 1.composables.md
โโโ public/
โ โโโ favicon.ico
โโโ package.json
โโโ .gitignore
In authentication.md (action-oriented H2 headings):
## Add basic authentication
## Protect your routes
## Handle login redirects
## Customize sessions