What’s new in Svelte: September 2022

Still looking for something to do this month? It's your last chance to get tickets to Svelte Summit, Stockholm! Join us on Sept 8-9th (https://www.sveltesummit.com/) 🎉 With the redesign of

Still looking for something to do this month? It’s your last chance to get tickets to Svelte Summit, Stockholm! Join us on Sept 8-9th (https://www.sveltesummit.com/) 🎉

With the redesign of SvelteKit’s filesystem-based router merging early last month, there’s lots to cover this month - from the migration script (https://github.com/sveltejs/kit/discussions/5774) to a number of new blog posts, videos and tutorials.

But the new routing isn’t the only new feature in SvelteKit…

What’s new in SvelteKit (#What’s-new-in-SvelteKit)

• Link is now supported as an HTTP header and works out of the box with Cloudflare’s Automatic Early Hints (https://github.com/sveltejs/kit/issues/5455) (1.0.0-next.405, PR (https://github.com/sveltejs/kit/pull/5735))

• $env/static/* are now virtual to prevent writing sensitive values to disk (1.0.0-next.413, PR (https://github.com/sveltejs/kit/pull/5825))

• $app/stores can now be used from anywhere on the browser (1.0.0-next.428, PR (https://github.com/sveltejs/kit/pull/6100))

• config.kit.env.dir is a new config that sets the directory to search for .env files (1.0.0-next.430, PR (https://github.com/sveltejs/kit/pull/6175))

Breaking changes: (#What’s-new-in-SvelteKit-Breaking-changes:)

• The filesystem-based router and load API improves the way routes are managed. Before installing version @sveltejs/kit@1.0.0-next.406 or later, follow this migration guide (https://github.com/sveltejs/kit/discussions/5774) (PR (https://github.com/sveltejs/kit/pull/5778), Issue (https://github.com/sveltejs/kit/discussions/5748))

• event.session has been removed from load along with the session store and getSession. Use event.locals instead (1.0.0-next.415, PR (https://github.com/sveltejs/kit/pull/5946))

• Named layouts have been removed in favor of (groups) (1.0.0-next.432, Docs (/docs/kit/advanced-routing#Advanced-layouts), PR & Migration Instructions (https://github.com/sveltejs/kit/pull/6174))

• event.clientAddress is now event.getClientAddress() (1.0.0-next.438, PR (https://github.com/sveltejs/kit/pull/6237))

• $app/env has been renamed to $app/environment, to disambiguate with $env/… (1.0.0-next.445, PR (https://github.com/sveltejs/kit/pull/6334))

For a full list of changes, check out kit’s CHANGELOG (https://github.com/sveltejs/kit/blob/master/packages/kit/CHANGELOG.md).

Updates to language tools (#What’s-new-in-SvelteKit-Updates-to-language-tools)

• TypeScript doesn’t resolve imports to SvelteKit’s $types very well, the latest version of Svelte’s language tools makes it better (105.21.0, #1592 (https://github.com/sveltejs/language-tools/pull/1592))

Community Showcase (#Community-Showcase)Apps & Sites built with Svelte (#Community-Showcase-Apps-Sites-built-with-Svelte)

• canno (https://twitter.com/a_warnes/status/1556724034959818754?s=20&t=RyKWALPByqMT5A_PkLtUew) is a simple interactive 3d physics game with adjustable gravity, cannon power, and debug visualizer - made with threlte

• straw.page (https://straw.page/) is an extremely simple website builder that lets you create unique websites straight from your phone

• Patra (https://patra.webjeda.com/) lets you share short notes just with a link. No database. No storage

• promptoMANIA (https://promptomania.com/) is an AI art community with an online prompt builder

• Album by Mood (https://www.albumbymood.com/) lets you listen to music based on your mood

• Daily Sumeiro (https://digivaux.com/sumeiro/daily/) is a daily game to test your math and logic skills

• Lofi and Games (https://www.lofiandgames.com/) - play relaxing, casual games right from your browser

• Pitch Pipe (https://github.com/joelgibson/pitch-pipe) is a digital pitch pipe with a frequency analyser and just-intonation intervals

• classes.wtf (https://github.com/ekzhang/classes.wtf) is a custom, distributed search engine written in Go and Svelte to make searching for Harvard courses much quicker than the standard course catalog

• Scrumpack (https://scrumpack.io/) is a set of tools to help agile/scrum teams with their ceremonies like Planning Poker and Retrospectives

Learning Resources (#Community-Showcase-Learning-Resources)Starring the Svelte team

• Supper Club × Rich Harris, Author of Svelte — Syntax Podcast 499 (https://syntax.fm/show/499/supper-club-rich-harris-author-of-svelte)

• Let’s talk routing with Rich Harris on Svelte Radio (https://www.svelteradio.com/episodes/lets-talk-routing-with-rich-harris)

• 2.17 - Building the Future of Svelte at Vercel with Rich Harris (https://www.youtube.com/watch?v=F1sSUDVoij4)

• 1.15 - What’s Up With SvelteKit with Shawn Wang (swyx) (https://www.youtube.com/watch?v=xLhuUShkYkM)

• Adding Notion Tailwindcss and DaisyUI to Svelte App (https://www.youtube.com/watch?v=l4sbqrY0XGk)

• Svelte 101 Session (https://www.youtube.com/watch?v=IIeBERpyxx4)

• Astro and Svelte (https://www.youtube.com/watch?v=iYKKg-50Gm4)

• Storyblok in Svelte (https://www.youtube.com/watch?v=xXHFRzqUxoE)

• Svelte London August Recording (https://www.youtube.com/watch?v=ua6gE2zPulw)

Learning the new SvelteKit routing

• Migrating Breaking Changes in SvelteKit (https://www.netlify.com/blog/migrating-breaking-changes-in-sveltekit/) by Brittney Postma (Netlify)

• Major Svelte Kit API Change - Fixing load, and tightening up SvelteKit’s design before 1.0 - Video by LevelUpTuts

• SvelteKit Is Never Going To Be The Same (https://www.youtube.com/watch?v=eVFcGA-15LA) - Video by Joy of Code

• Let’s learn SvelteKit by building a static Markdown blog from scratch (https://joshcollinsworth.com/blog/build-static-sveltekit-markdown-blog) by Josh Collinsworth (updated Aug 26th to keep up with the new changes)

To Watch

• Svelte Guide For React Developers (https://www.youtube.com/watch?v=uWDBEUkTRGk) and Svelte State Management Guide (https://www.youtube.com/watch?v=4dDjQiOVrOo) by Joy of Code

• What Is Bookit? The Svelte Kit Storybook Killer (https://www.youtube.com/watch?v=aOBGhvggsq0) and What Is @type{import In Svelte Kit - JSDoc Syntax (https://www.youtube.com/watch?v=y0DvJTVO65M) by LevelUpTuts

• TWF Yet another JS Framework… or not? Svelte! (https://www.youtube.com/watch?app=desktop&v=nT8QtDBIKZA) by TWF meetup

To Read

• Creating a Figma Plugin with Svelte (https://www.lekoarts.de/javascript/creating-a-figma-plugin-with-svelte) by Lennart

• Svelte Video Blog: Vlog with Mux from your own SvelteKit Site (https://plus.rodneylab.com/tutorials/svelte-video-blog) and Svelte Shy Header: Peekaboo Sticky Header with CSS (https://rodneylab.com/svelte-shy-header/) by Rodney Lab

Libraries, Tools & Components (#Community-Showcase-Libraries-Tools-Components)

• @svelte-plugins/tooltips (https://github.com/svelte-plugins/tooltips) is a simple tooltip action and component designed for Svelte

• Lucia (https://github.com/pilcrowOnPaper/lucia-sveltekit) is a simple authentication library for SvelteKit that connects your SvelteKit app to your database

• remix-router-svelte (https://github.com/brophdawg11/remix-routers/tree/main/packages/svelte) is a Svelte implementation of the react-router-dom API (driven by @remix-run/router)

• MKRT (https://github.com/j4w8n/mkrt) is a CLI to help you create SvelteKit routes, fast

• Histoire (https://histoire.dev/guide/) is a tool to generate stories applications - scenarios where you showcase components for specific use cases

• sveltekit-flash-message (https://www.npmjs.com/package/sveltekit-flash-message) is a Sveltekit library that passes temporary data to the next request, usually from endpoints

• svelte-particles (https://github.com/matteobruni/tsparticles#svelte) is a lightweight TypeScript library for creating particles

• svelte-claps (https://github.com/bufgix/svelte-claps) adds clap button (like Medium) to any page for your SvelteKit apps

• Neon Flicker (/playground/fd5e3b2be7da42fe8afddf89661af7d7?version=3.49.0) is a Svelte component to make your text flicker in a cyberpunk style

• ComboBox (/playground/144f22d18c6943abb1fdd00f13e23fde?version=3.49.0) is a search input to help users select from a large list of items

• @svelte-put (https://github.com/vnphanquang/svelte-put) is useful svelte stuff to put in your projects

• vite-plugin-svelte-bridge (https://github.com/joshnuss/vite-plugin-svelte-bridge) lets you write Svelte components and use them from React & Vue

UI Kits and Starters

• Svelte-spectre (https://github.com/basf/svelte-spectre) is a UI-kit based on spectre.css and powered by Svelte

• Skeleton (https://skeleton.brainandbonesllc.com/) allows you to build fast and reactive web UI using the power of Svelte + Tailwind

• iconsax-svelte (https://www.npmjs.com/package/iconsax-svelte) brings the popular icon kit to Svelte

• laravel-vite-svelte-spa-template (https://github.com/NukeJS/laravel-vite-svelte-spa-template) is a Laravel 9, Vite, Svelte SPA, Tailwind CSS (w/ Forms Plugin & Aspect Ratio Plugin), Axios, & TypeScript starter template

• neutralino-svelte-boilerplate-js (https://github.com/Raffaele/neutralino-svelte-boilerplate-js) is a cross platform desktop template for Neutralino and Svelte

• figma-plugin-svelte-vite (https://github.com/candidosales/figma-plugin-svelte-vite) is a boilerplate for creating Figma plugins using Svelte, Vite and Typescript

• Urara (https://github.com/importantimport/urara) is a sweet & powerful SvelteKit blog starter

• SvelteKit Commerce (https://vercel.com/templates/svelte/sveltekit-commerce) is an all-in-one starter kit for high-performance e-commerce sites built with SvelteKit by Vercel

Did we miss anything? Let us know on Reddit (https://www.reddit.com/r/sveltejs/) or Discord (https://discord.com/invite/yy75DKs)!

See ya next month!

Write a comment
No comments yet.