Nuxt: Das Vue Full-Stack Framework, Features, Deployment
Nuxt ist das offizielle Vue-Full-Stack-Framework — File-based Routing, SSR/SSG/SPA, Nitro-Server-Engine, Auto-Imports. Vues Antwort auf Next.js.
Was ist Nuxt?
Nuxt ist das offizielle Full-Stack-Framework für Vue.js. Wo Vue die UI-Library ist, ist Nuxt alles andere, was zum Bauen einer Production-Web-App nötig ist: Routing, Server-Side Rendering (SSR), Static Site Generation (SSG), API-Endpoints, Build-Tooling und Deployment. Es ist analog zu Next.js für React oder SvelteKit für Svelte.
Nuxt 3 ist auf Vue 3, Vite und der Nitro-Server-Engine gebaut. Nitro deployed virtually anywhere — Node.js, AWS Lambda, Cloudflare Workers, Vercel, Netlify, Deno Deploy.
Warum Nuxt?
- Conventions over Config.
- Universal Rendering.
- Nitro-Engine.
- Auto-Imports.
- TypeScript first-class.
- Vue-Ökosystem.
- Nuxt-Modules.
- Vite Dev-Server.
Nuxt-Projekt-Struktur
my-app/
├── pages/
│ ├── index.vue
│ └── blog/[slug].vue
├── components/
├── composables/
├── server/
│ ├── api/posts.get.ts
│ └── middleware/
├── layouts/default.vue
└── nuxt.config.tsRouting in Nuxt
<script setup lang="ts">
const route = useRoute();
const { data: post } = await useFetch(`/api/posts/${route.params.slug}`);
</script>Server-API-Routes
export default defineEventHandler(async (event) => {
const slug = getRouterParam(event, 'slug');
const post = await db.post.findUnique({ where: { slug } });
if (!post) throw createError({ statusCode: 404 });
return post;
});Data-Fetching
| Composable | Use Case |
|---|---|
useFetch | Universal Data-Fetching |
useAsyncData | Custom Async-Logic |
$fetch | Imperative HTTP |
useState | SSR-safe shared State |
Rendering-Modi
export default defineNuxtConfig({
ssr: true,
routeRules: {
'/': { prerender: true },
'/dashboard': { ssr: false },
'/blog/**': { isr: 60 }
}
});Nuxt vs Next.js vs SvelteKit
| Feature | Nuxt | Next.js | SvelteKit |
|---|---|---|---|
| Underlying-Lib | Vue 3 | React | Svelte |
| Server-Engine | Nitro | Custom + Edge | Adapters |
| Auto-Imports | Ja | Nein | Nein |
| Bundle-Size | Medium | Größer | Kleinste |
Beliebte Nuxt-Modules
| Modul | Zweck |
|---|---|
@nuxtjs/tailwindcss | Tailwind-Integration |
@nuxt/content | Markdown-CMS |
@nuxtjs/i18n | Internationalization |
@nuxt/image | Image-Optimization |
@pinia/nuxt | Pinia State-Management |
@sidebase/nuxt-auth | Authentication |
@vueuse/nuxt | VueUse-Composables |
@nuxt/seo | SEO |
Nuxt Best Practices
- Server-Routes für API nutzen.
- useFetch für Daten.
- routeRules für Hybrid-Rendering.
- Auto-Imports für cleaneren Code.
- Pinia für Global-State.
- SEO via @nuxt/seo.
- Nuxt DevTools.
- TypeScript überall.
FAQ: Nuxt
Ist Nuxt 3 Production-ready?
Ja.
Nuxt oder Vue alone?
Vue alone für SPAs. Nuxt für SSR, SSG, SEO-kritisch.
Kann Nuxt zu Cloudflare Workers deployen?
Ja — Nitro auto-detected.
Wie vergleicht sich Nuxt mit Next.js?
Verschiedene Ökosysteme.
Unterstützt Nuxt TypeScript?
First-class.
Unterschied zwischen useFetch und $fetch?
useFetch handhabt SSR + Client + Caching automatisch.
Kann ich Nuxt für statische Site nutzen?
Ja.
Ihre Nuxt-App mit LoadFocus load-testen
LoadFocus läuft JMeter- und k6-Scripts gegen Ihr Nuxt-Deployment aus 25+ Regionen. Registrieren bei loadfocus.com/signup.
Verwandte LoadFocus-Tools
Setze dieses Konzept mit LoadFocus in die Praxis um — derselben Plattform, die alles antreibt, was du gerade gelesen hast.