Question presented to candidate: "We are starting a new content-heavy site and the team knows Vue. Someone suggested Nuxt. What is Nuxt, how does it relate to Vue itself, and what would it give us that a plain Vite + Vue project does not?"
What a strong answer should cover:
- Nuxt is a framework built on top of Vue: your components are ordinary Vue SFCs, and Nuxt adds conventions, a build pipeline and a server.
- File-based routing (on Vue Router), layouts, and auto-imports of Vue APIs, composables and components.
- Rendering modes per route: SSR by default, prerendering, client-only, and caching rules via
routeRules. - Data fetching with
useFetch/useAsyncData, whose server results are serialised so the client does not fetch again. - A server layer (Nitro) for API routes and deployment presets (Node, serverless, edge, static).
- Versions: Nuxt 4 is current (July 2025 onwards); Nuxt 3 reached end of life on 31 July 2026.
- Trade-offs: more conventions and magic, a server to run for SSR, and a framework release cycle on top of Vue's.
Clarifying questions expected:
- "Do we need SEO and fast first paint, or is this an app behind a login?"
- "Where will it be hosted: a Node server, serverless, or static hosting only?"
Code / implementation expected: Optional β a page using useFetch and a routeRules entry.