SvelteKit — Getting Started Guide
Advertisement
SvelteKit — Getting Started Guide
SvelteKit offers a different approach to web development with reactive components and less boilerplate.
Installation
npm create svelte@latest my-app
cd my-app
npm install
npm run dev
Basic Component
<script>
let count = 0
function increment() {
count += 1
}
</script>
<div>
<button on:click={increment}>
count is {count}
</button>
</div>
<style>
button {
background: blue;
color: white;
}
</style>
Routing
src/
├── routes/
│ ├── +page.svelte → /
│ ├── blog/
│ │ └── +page.svelte → /blog
│ └── blog/[slug]/
│ └── +page.svelte → /blog/[slug]
Load Functions
// src/routes/blog/[slug]/+page.ts
export async function load({ params }) {
const post = await fetch(`/api/posts/${params.slug}`)
.then(r => r.json())
return { post }
}
<!-- src/routes/blog/[slug]/+page.svelte -->
<script>
export let data
</script>
<h1>{data.post.title}</h1>
Forms
<script>
export let form
</script>
<form method="POST">
<input name="email" type="email" required />
<button>Sign up</button>
</form>
{#if form?.success}
<p>Success!</p>
{/if}
// src/routes/+page.server.ts
export const actions = {
default: async ({ request }) => {
const data = await request.formData()
// Process form
return { success: true }
}
}
FAQ
Q: How does Svelte compare to React? A: Svelte compiles to efficient code, less boilerplate than React.
Q: Can I use React libraries in SvelteKit? A: Difficult. Better to stick with Svelte ecosystem.
Q: Is SvelteKit production ready? A: Yes, used by many companies. Growing ecosystem.
SvelteKit offers a fresh perspective on web development.
Advertisement