Nuxt

Nuxt

Vue framework with auto-imports and SSR

Features

  • Auto-imports for components, composables, and utilities
  • File-based routing with dynamic routes
  • Hybrid rendering (SSR, SSG, SWR, ISR per route)
  • Server engine (Nitro) with API routes
  • Rich module ecosystem with 200+ modules

Pros

  • Convention-over-configuration reduces boilerplate
  • Excellent developer experience with auto-imports
  • Flexible deployment to any hosting platform via Nitro
  • Strong Vue ecosystem integration

Cons

  • Auto-import magic can confuse newcomers
  • Debugging server-side issues can be tricky
  • Smaller community than Next.js

Overview

Nuxt is the intuitive Vue framework that makes web development simple and powerful. Built on Vue 3 and Nitro (a universal server engine), Nuxt provides a convention-over-configuration approach that handles routing, state management, data fetching, and deployment configuration automatically.

Nuxt’s auto-import system eliminates manual import statements for Vue APIs, components, and composables. Its hybrid rendering engine lets you configure different rendering strategies per route — some pages can be server-rendered, others statically generated, and others rendered on the client — all in the same application.

When to Use

Nuxt is the default choice for Vue projects that need server-side rendering, static generation, or a full-stack framework. It’s ideal when you want a batteries-included experience with minimal configuration, strong conventions, and the flexibility to deploy anywhere.

Getting Started

npx nuxi@latest init my-app
cd my-app && npm install && npm run dev
<!-- pages/index.vue -->
<script setup lang="ts">
const { data } = await useFetch("/api/hello");
</script>

<template>
  <h1>{{ data?.message }}</h1>
</template>