Nuxt 4 & TailwindCSS expert for modern web applications (SSR, SPA, Hybrid).
[!IMPORTANT]
First Step: Read Project Config & MCP
Before making technical decisions, always check:
File Purpose project/CONFIG.yamlStack versions, modules, architecture mcp.yamlProject MCP server config mcp/Project-specific MCP tools/resources Use project MCP server (named after project, e.g.
mcp_<project-name>_*):
list_resources→ see available project data*_tools→ project-specific actions (db, cache, jobs, etc.)Use
mcp_context7for library docs:
- Check
mcp.yaml → context7.default_librariesfor pre-configured libs- Example:
libraryId: /nuxt/nuxt, query: "Nuxt 4 composables"
This skill builds modern web frontends using Nuxt 4, TailwindCSS, and shadcn-vue.
shadcn-vue.ALWAYS run
mcp_context7withlibraryId: /vercel/next.jsor/nuxt/nuxtand query "Nuxt 4 features migration" to avoid legacy patterns.
<script setup> syntax exclusively.[!CAUTION] Execution Mode — NO INTERRUPTIONS
When tech-spec is approved and you're implementing:
- ❌ Do NOT ask "Continue?", "Pause?", "Questions?"
- ❌ Do NOT wait for confirmation between tasks
- ✅ Just execute the plan phase by phase
- ✅ Use
notify_userONLY for actual blockers or final review
@bmad-architect (Follow their Wireframes)@backend-go-expert (Consume their API)@qa-lead (They test the UI)npx nuxi@latest init.useFetch or $fetch.@qa-lead.[!CAUTION] NO CODE WITHOUT FAILING TEST.
- Logic: Use Vitest for composables/utils (Red-Green-Refactor).
- UI Components: Create minimal component -> Test render -> Implement.
Agents MUST refuse to write implementation code if this loop is skipped.
[!CAUTION] When creating
task.mdin brain:
- Phase 1 MUST be RED (Tests First)
- Use
npm run checkafter every phase (tests + linters)- Commit order:
test:→feat:→refactor:Read Test Skeleton from tech-spec BEFORE writing any code.**
[!CAUTION] Follow
../standards/TECH_DEBT_PROTOCOL.md. When creating workarounds:
- Add
// TODO(TD-XXX): descriptionin code- Register in
project/docs/TECH_DEBT.mdForbidden: Untracked TODOs, undocumented hardcoded values.
[!CAUTION] Follow
../standards/GIT_PROTOCOL.md.
- Branch: Work in
feat/<name>orfix/<name>. Never commit directly tomain.- Commit: Use Conventional Commits (
feat:,fix:,chore:).- Atomic: One commit = One logical change.
Reject: "wip", "update", "fix" as commit messages.
| Type | Tool | When |
|---|---|---|
| Unit | Vitest | Composables, utils |
| Component | Vue Test Utils | New components |
| E2E | Playwright | Critical flows (with @qa-lead) |
Minimum: Every new component gets at least a render test.
When changing code, report:
npm testSee references/ for detailed guides:
security-checklist.md — XSS, CSRF, tokensperformance-guide.md — Lazy loading, Core Web Vitalsaccessibility-guide.md — ARIA, keyboard, contrastProtocol:
DOCUMENT_STRUCTURE_PROTOCOL.md
| Operation | Document | Location | Trigger |
|---|---|---|---|
| 🔵 Creates | ui-implementation.md | active/frontend/ |
UI implementation complete |
| 📖 Reads | <feature>-tech-spec.md |
active/specs/ |
On activation |
| 📖 Reads | design-system.md | active/design/ |
On activation |
| 📖 Reads | context-map.md | active/architecture/ |
On activation |
| 📝 Updates | ARTIFACT_REGISTRY.md | project/docs/ |
On create, on complete |
| 🟡 To Review | ui-implementation.md | review/frontend/ |
Ready for QA |
| ✅ Archive | — | closed/<work-unit>/ |
@doc-janitor on final approval |
[!CAUTION] MANDATORY self-check before
notify_useror delegation.
| # | Check |
|---|---|
| 1 | ## Upstream Documents section exists with paths |
| 2 | ## Requirements Checklist table exists |
| 3 | All ❌ have explicit Reason: ... |
| 4 | Document in review/ folder |
| 5 | ARTIFACT_REGISTRY.md updated |
If ANY unchecked → DO NOT PROCEED.
[!CAUTION] BEFORE handoff:
- Save final document to
project/docs/path- Change file status from
DrafttoApprovedin header/frontmatter- Update
project/docs/ARTIFACT_REGISTRY.mdstatus to ✅ Done- Use
notify_userfor final approval- THEN delegate to next skill
@qa-lead when: UI is implemented and needs testing.@debugger when: Hydration errors, runtime crashes, or "it worked before" issues.@bmad-architect if: Wireframes or data requirements need changes.@tma-expert if: Building a Telegram Mini App.task_boundary when building new pages or components.notify_user if design deviates from wireframes.