SvelteKit: Definition, Features, Routing, Deployment-Guide
SvelteKit ist das offizielle Svelte-Framework für Full-Stack-Web-Apps — File-based Routing, SSR/SSG/SPA, Adapters für jedes Deploy-Target.
Was ist SvelteKit?
SvelteKit ist das offizielle Application-Framework für Svelte. Wo Svelte der UI-Component-Compiler ist, ist SvelteKit alles andere, was nötig ist, um eine Full-Stack-Web-App zu bauen: Routing, Server-Side Rendering (SSR), Static Site Generation (SSG), API-Routes, Build-Tooling und Deployment-Adapter. Es ist analog zu Next.js für React oder Nuxt für Vue.
Warum SvelteKit?
- Winzige Bundles. Svelte kompiliert Components zu vanilla JS.
- Schnelle Page-Loads.
- Flexibles Rendering.
- File-based Routing.
- Adapters für jeden Host.
- Form-Actions.
- TypeScript überall.
- Vite Dev-Server.
SvelteKit-Projekt-Struktur
my-app/
├── src/
│ ├── routes/
│ │ ├── +page.svelte
│ │ ├── +layout.svelte
│ │ └── blog/[slug]/+page.svelte
│ ├── lib/
│ └── app.html
├── static/
└── svelte.config.jsRouting in SvelteKit
| File | Zweck |
|---|---|
+page.svelte | Page-Component |
+page.server.ts | Server-only Data-Loading |
+page.ts | Universal Data-Loading |
+layout.svelte | Layout |
+server.ts | API-Endpoint |
+error.svelte | Error-Boundary |
Data-Loading-Beispiel
export const load: PageServerLoad = async ({ params }) => {
const post = await db.post.findUnique({ where: { slug: params.slug } });
if (!post) throw error(404, 'Post not found');
return { post };
};API-Routes
export const GET: RequestHandler = async () => {
const posts = await db.post.findMany();
return json(posts);
};Form-Actions
export const actions: Actions = {
default: async ({ request }) => {
const data = await request.formData();
await db.post.create({ data: { title: data.get('title') as string } });
return { success: true };
}
};Adapters: überall deployen
| Adapter | Target |
|---|---|
adapter-auto | Auto-detect |
adapter-node | Node.js |
adapter-static | Pure SSG |
adapter-vercel | Vercel |
adapter-netlify | Netlify |
adapter-cloudflare | Cloudflare |
SvelteKit vs Next.js vs Nuxt
| Feature | SvelteKit | Next.js | Nuxt |
|---|---|---|---|
| Compiler vs Runtime | Compiler | Runtime | Runtime |
| Bundle-Size | Kleinste | Größer | Medium |
| Learning-Curve | Einfachste | Steiler | Medium |
| Ökosystem | Kleiner | Größtes | Medium |
SvelteKit Best Practices
- +page.server.ts für sensitive Data.
- Form-Actions nutzen.
- Alles typen.
- Richtigen Adapter wählen.
- SSR by default; opt-out wo nötig.
- Streaming mit
defer. - Svelte 5 Runes nutzen.
FAQ: SvelteKit
Ist SvelteKit Production-ready?
Ja — 1.0 released Dez 2022.
SvelteKit oder Next.js?
SvelteKit für kleinere Bundles. Next.js für React-Ökosystem.
Unterstützt SvelteKit TypeScript?
Ja — first-class.
Kann ich SvelteKit für statische Site nutzen?
Ja — adapter-static.
Wie handhabt SvelteKit Authentication?
Hooks (src/hooks.server.ts).
Funktioniert SvelteKit mit meinem CSS-Framework?
Ja — Tailwind, UnoCSS, alle.
Unterschied zwischen Svelte und SvelteKit?
Svelte = UI-Library. SvelteKit = Full-Stack-Framework.
Load-Testen Sie Ihre SvelteKit-App mit LoadFocus
LoadFocus läuft JMeter- und k6-Scripts gegen Ihr SvelteKit-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.