Skip to content
Dashboard

Using SvelteKit 1.0 on Vercel

Developer Advocate

As of today, December 14th, 2022, SvelteKit 1.0 has officially launched.

Copy link to headingWhat is SvelteKit?

Copy link to headingSvelteKit Features

Copy link to headingWhat’s changed in the past 12 months

Copy link to headingNew Directory-based Routing

src
└ routes
├ dashboard/
│ ├ index.svelte
│ └ _nonPageRoute.js
├ about.svelte
└ index.svelte

src
└ routes
├ dashboard/
│ ├ +page.svelte
│ └ nonPageRoute.js
├ about/
│ └ +page.svelte
└ +page.svelte

Copy link to headingNew Layouts System

src
└ routes
├ dashboard/
│ └ index@dashboard.svelte
├ about/
│ ├ index.svelte
│ └ testimonials/
│ ├ index.svelte
│ └ __layout.svelte
├ __layout-dashboard.svelte
└ __layout.svelte

src
└ routes
│ (app)/
│ ├ dashboard/
│ ├ item/
│ └ +layout.svelte
│ (marketing)/
│ ├ about/
│ ├ testimonials/
│ └ +layout.svelte
├ admin/
└ +layout.svelte

Copy link to headingLoading Data

<script context="module">
export async function load() {
const product = 'some data';
return {
props: {
product: product.data,
},
};
}
</script>
<script>
export let product;
</script>

+page.js
export const load = () => {
let product = "some data"
return {
product
}
}

<!--+page.svelte-->
<script>
/** @type {import('./$types').PageData} */
export let data; // this is typed as `{ product: string }`!
</script>
<h1>This is our data: {data}</h1>

Copy link to headingServer routes (Endpoints)

src/
└ routes/
└ about.json.js

src/
└ routes/
└ api/
└ +server.js

Copy link to headingSvelteKit on Vercel

Copy link to headingCommunity

Copy link to headingGet started with SvelteKit 1.0

Ready to deploy?