On this page
Overview
SvelteKit is an application framework for Svelte. It combines filesystem routing, server-side loading and forms, prerendering, and server rendering.
Features and best fit
Based on official documentation; not hands-on tested · Content checked:
Key features
Best fit
Before adoption
Official sources
- [1]SvelteKit README at fixed commit(2026-10-05)
- [2]@sveltejs/kit 3.0.0 package(2026-10-05)
- [3]Creating a project(2026-10-05)
- [4]Advanced routing(2026-10-05)
- [5]Form actions(2026-10-05)
- [6]Private environment variables(2026-10-05)
- [7]Adapters(2026-10-05)
- [8]SvelteKit MIT license(2026-10-05)
- [9]SvelteKit GitHub metadata(2026-10-05)
Supplemental curator note
SvelteKit fits teams that want pages and server logic in one project with progressively enhanced forms. Verify a real submission, then choose the adapter and secret boundary.
Try it in 3 steps
- 1
Create a minimal project with the official tool
Requires Node.js 22.17 or later and npm. Use pinned sv 1.1.0.
node -e 'const [a,b]=process.versions.node.split(".").map(Number);if(a<22||(a===22&&b<17))process.exit(1)' && npx --yes sv@1.1.0 create sveltekit-demo --template minimal --types jsdoc --no-add-ons --install npm && cd sveltekit-demo - 2
Add a form action and build
Read the posted name on the server and return a greeting to the page.
printf '%s\n' "export const actions = { default: async ({ request }) => { const data = await request.formData(); return { message: 'Hello, ' + data.get('name') + '!' }; } };" > src/routes/+page.server.js && printf '%s\n' '<script>let { form } = $props();</script>' '<form method="POST"><input name="name" value="Codex"><button>Greet</button></form>' '{#if form?.message}<p>{form.message}</p>{/if}' > src/routes/+page.svelte && npm run build - 3
Verify submission and shutdown
Post Codex to a local-only port and verify the greeting. Stop the process that was started and confirm the port no longer accepts connections.
( set -eu; port=$(node -e 'const n=require("node:net").createServer();n.listen(0,"127.0.0.1",()=>{console.log(n.address().port);n.close()})'); pid=""; cleanup(){ if [ -n "$pid" ];then kill "$pid" 2>/dev/null||true;wait "$pid" 2>/dev/null||true;fi;}; trap cleanup EXIT HUP INT TERM; node ./node_modules/vite/bin/vite.js dev --host 127.0.0.1 --port "$port" --strictPort > vite.log 2>&1 & pid=$!; i=0;until curl -fsS --max-time 1 "http://127.0.0.1:$port/" >/dev/null;do i=$((i+1));[ "$i" -lt 20 ];sleep .25;done; curl -fsS --max-time 3 -X POST -H 'Content-Type: application/x-www-form-urlencoded' --data 'name=Codex' "http://127.0.0.1:$port/" | grep -F 'Hello, Codex!';cleanup;pid="";node -e 'const s=require("node:net").createConnection({host:"127.0.0.1",port:+process.argv[1]});s.setTimeout(1000);s.once("connect",()=>process.exit(1));s.once("timeout",()=>process.exit(1));s.once("error",x=>process.exit(x.code==="ECONNREFUSED"?0:1))' "$port";trap - EXIT HUP INT TERM )
Growth
Growth trends · Last 30 days
20,836 Stars
Trend data is still being collected.
Development activity
Last 90 days · weekly
- Commits (last 30 days)
- 151
- Open PRs
- 103
Development activity is still being collected.
Built with
Categories and tags
Categories
GitHub data
GitHub dataView detailed GitHub data
GitHub Topics
- svelte
- Stars
- 20,836
- Forks
- 2,345
- Watchers
- 147
- Open issues
- 735
- Contributors
- 448
- Owner type
- Organization
- Primary language
- JavaScript
- License
- MIT
- Repository last updated
- Oct 5, 2026
Related information
Write a related articleShare a guide or use case for this OSS in Markdown. Articles are published after administrator approval.
Explore next
- Next.js143,179 Stars
1 shared tag(s) · 1 shared category(s) · Same language
combine React routing, rendering, and server capabilities for full-stack web applications
JavaScript - Express69,520 Stars
1 shared tag(s) · 1 shared category(s) · Same language
Build Node.js APIs and web backends by composing routing and middleware into a thin HTTP layer
JavaScript - Fastify37,232 Stars
1 shared tag(s) · 1 shared category(s) · Same language
build Node.js web and API servers with low overhead, plugins, JSON Schema validation, and Pino logging
JavaScript - SortableJS31,186 Stars
1 shared tag(s) · 1 shared category(s) · Same language
reorder list items with drag and drop within or across lists while supporting touch input
JavaScript - GSAP28,810 Stars
1 shared tag(s) · 1 shared category(s) · Same language
control advanced web animation with tweens, timelines, scroll triggers, and plugins
JavaScript - Select225,907 Stars
1 shared tag(s) · 1 shared category(s) · Same language
Turn native selects into searchable, multi-select, AJAX, tagging, and paginated selectors
JavaScript
Report incorrect information
Tell us if any listing information is incorrect or outdated.