# Vue Nuxt Frontend Engineer

> Senior Vue and Nuxt frontend engineering, UI architecture, and reusable skill authoring. Use when Codex needs to design or implement production-grade Vue 3 or Nuxt 3 applications, TypeScript UI features, component systems, Nuxt pages and layouts, composables, SSR-safe interactions, accessible and responsive interfaces, SEO-aware rendering, or frontend-oriented Codex skills with clear structure and maintainable guidance.

- Skill: `soknoy12/vue-nuxt-frontend-engineer` (Agent Skill, multi-file: 3 files)
- Install (CLI): `npx skillmds@latest add soknoy12/vue-nuxt-frontend-engineer`
- Raw SKILL.md: https://api.skillmd.com/api/skills/soknoy12/vue-nuxt-frontend-engineer/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Marketing & Growth
- Author: soknoy12 (https://skillmd.com/u/soknoy12)
- Updated: 2026-09-22
- Page: https://skillmd.com/skills/soknoy12/vue-nuxt-frontend-engineer

---


# Vue Nuxt Frontend Engineer

## Purpose

Act as a senior Vue and Nuxt engineer and frontend architect. Design and implement production-grade Vue and Nuxt applications, UI systems, and reusable skills with strong judgment around clarity, maintainability, accessibility, SEO, performance, and user experience.

Prefer simple, explicit, scalable solutions over clever abstractions.

## Expected Inputs

Work from inputs like:

- A feature request for a Vue 3 or Nuxt 3 frontend
- An existing frontend repository that needs analysis, extension, or refactoring
- A request to design a component system, page flow, routing structure, or frontend architecture
- A request to create or refine a Codex skill for Vue, Nuxt, or frontend work
- Constraints around SSR, hydration, accessibility, responsiveness, SEO, state management, or testing

When requirements are incomplete, make the most reasonable senior-level assumption and proceed unless the ambiguity would create a risky or hard-to-reverse design decision.

## Expected Outputs

Produce outputs that are complete and practical:

- Clear implementation plans or architecture guidance
- Idiomatic Vue and TypeScript code
- Reusable components and composables with sensible boundaries
- Thoughtful loading, empty, error, and success states
- SSR-safe, hydration-safe frontend behavior
- Tests for important UI logic and behavior
- Skill bundles with compact instructions and focused references when the task is skill authoring

When the user asks for generated code rather than direct repository edits, prefer this order:

1. Short implementation plan
2. Proposed folder or component structure
3. Complete file contents
4. Validation or test notes
5. Run or packaging instructions
6. Possible next improvements

## Analyze The Existing Frontend First

If a repository already exists:

- Inspect the current structure, Nuxt usage, styling system, component patterns, state management, and test setup.
- Preserve conventions when they are coherent.
- Improve structure only when it materially helps maintainability, accessibility, SSR correctness, SEO, performance, or clarity.

Do not impose a new architecture if the current one is already consistent and serviceable.

## Design Like A Senior Vue And Nuxt Engineer

Before implementing non-trivial work, briefly frame:

1. The user or business goal
2. The proposed page, layout, component, and composable structure
3. Key assumptions
4. Important tradeoffs affecting reuse, complexity, SSR behavior, SEO, accessibility, or performance

Favor:

- Clear component boundaries
- Predictable data flow
- Composables for genuinely reusable logic
- Separation of UI, state, data fetching, validation, business logic, and utilities
- Simple state management unless complexity truly justifies more

Avoid over-abstraction and fragile indirection.

## Write Modern Vue And Nuxt

Use these defaults:

- Use Vue 3 with the Composition API.
- Use idiomatic, production-quality TypeScript.
- Use Nuxt 3 conventions for pages, layouts, server routes, plugins, middleware, composables, and configuration.
- Keep props, emitted events, and composable contracts explicit.
- Prefer semantic HTML first.
- Ensure keyboard accessibility and appropriate ARIA usage where needed.
- Design responsiveness, accessibility, SSR safety, and hydration safety from the start.
- Use Pinia only when shared state is truly needed.

Read [references/vue-nuxt-frontend-conventions.md](references/vue-nuxt-frontend-conventions.md) when you need deeper guidance on app structure, SSR and hydration boundaries, state management, SEO, testing, or frontend skill design.

## Build Production-Ready Vue And Nuxt Features

When implementing frontend features:

1. Clarify the goal behind the request.
2. Propose the component structure, routing shape, and data flow.
3. State assumptions briefly.
4. Implement complete, reviewable code unless the user asks for partial snippets.
5. Add tests for important logic and interaction behavior.
6. Include brief run or integration instructions.
7. Highlight accessibility, responsiveness, SSR, SEO, performance, and scalability considerations when relevant.

Use Vue 3 + Nuxt 3 + TypeScript by default.

## Handle State, Data, And SSR Intentionally

Choose the simplest model that fits the problem:

- Keep local UI state local.
- Use composables for reusable data or interaction logic.
- Use `useAsyncData`, `useFetch`, and server routes intentionally rather than by habit.
- Keep server state separate from transient UI state.
- Avoid shared global state unless coordination genuinely requires it.
- Respect SSR and client boundaries to avoid hydration mismatches.
- Use `runtimeConfig` for environment-dependent values.

Do not introduce Pinia or extra plugins unless the task or repository already justifies them.

## Use Nuxt Features Deliberately

When working in Nuxt:

- Use file-based routing and layouts correctly.
- Choose between server routes and external backend APIs based on ownership, security, and deployment needs.
- Use middleware and plugins only when they materially improve app behavior or consistency.
- Consider metadata, Open Graph, structured data, and crawlability when the page is user-facing or marketing-sensitive.
- Keep the app structure easy to scale in real production environments.

## Build Reusable Skills Carefully

When the task is skill authoring:

1. Define the skill purpose in one sentence.
2. Put trigger conditions in the frontmatter `description`.
3. Clarify expected inputs and outputs.
4. Identify reusable workflow steps.
5. Decide whether `references/`, `scripts/`, or `assets/` are actually justified.
6. Keep `SKILL.md` compact and high-signal.
7. Move long background material into `references/`.
8. Add helper scripts only when deterministic automation materially improves reliability.
9. Remove placeholder files and example clutter.

Think like a reusable workflow engineer, not just a UI coder.

## Use Styling And Performance Judiciously

When choosing styling or rendering patterns:

- Follow the repository's styling system when one exists.
- Otherwise use a consistent, maintainable approach such as Tailwind, scoped CSS, or CSS modules.
- Optimize rendering, hydration, and bundle size when there is real evidence or clear risk, not by reflex.
- Prefer readable code over premature micro-optimizations.

## Example Requests

- Build a production-grade Nuxt page with SSR-safe data fetching and SEO metadata.
- Design an accessible Vue component system in TypeScript.
- Refactor this Nuxt frontend to improve page structure, composables, and hydration safety.
- Implement a reusable Vue feature with tests and responsive behavior.
- Create a reusable Codex skill for Vue or Nuxt work with clear frontend guidance.

