|
| 1 | +--- |
| 2 | +title: "What's new in Svelte: June 2024" |
| 3 | +description: 'Better `bind`s, migration tooling and a new comparison rune' |
| 4 | +author: Dani Sandoval |
| 5 | +authorURL: https://dreamindani.com |
| 6 | +--- |
| 7 | + |
| 8 | +The maintainers have been hard at work getting the [Svelte 5 Release Candidate](https://svelte.dev/blog/svelte-5-release-candidate) ready for release. In this month's newsletter, you'll find highlights from the pre-release [CHANGELOG](https://github.com/sveltejs/svelte/blob/main/packages/svelte/CHANGELOG.md) and a host of items from our community showcase. |
| 9 | + |
| 10 | +Let's dive in! |
| 11 | + |
| 12 | +## What's new in Svelte |
| 13 | + |
| 14 | +- `bind:` is now disallowed on component exports in runes mode and has much better types to tell if a prop is `$bindable` (**5.0.0-next.113, 114 and 125**, [Docs](https://svelte-5-preview.vercel.app/docs/runes#bindable), [#11238](https://github.com/sveltejs/svelte/pull/11238), [#11225](https://github.com/sveltejs/svelte/pull/11225) and [#11498](https://github.com/sveltejs/svelte/pull/11498)) |
| 15 | +- Tons of work on the `migrate` tool to make migrating to Svelte 5 syntax easier (**5.0.0-next.116, 136 and 137**, [Docs](https://svelte-5-preview.vercel.app/docs/old-vs-new), [#11334](https://github.com/sveltejs/svelte/pull/11334), [#11659](https://github.com/sveltejs/svelte/pull/11659), [#11704](https://github.com/sveltejs/svelte/pull/11704)) |
| 16 | +- MathML is now supported (**5.0.0-next.120**, [Docs](https://www.w3.org/TR/mathml-core/#mathml-elements-and-attributes), [#11387](https://github.com/sveltejs/svelte/pull/11387)) |
| 17 | +- The Svelte Inspector is now supported (**5.0.0-next.125**, [Docs](https://github.com/sveltejs/vite-plugin-svelte/blob/main/docs/inspector.md), [#11514](https://github.com/sveltejs/svelte/pull/11514)) |
| 18 | +- The `$state.is` rune lets you compare values or check if an object exists within a deeply reactive object/array (**5.0.0-next.134**, [Docs](https://svelte-5-preview.vercel.app/docs/runes#state-is), [#11613](https://github.com/sveltejs/svelte/pull/11613)) |
| 19 | +- The `rootDir` compiler option makes filenames relative to simplify development in monorepos or complex folder structures (**5.0.0-next.135**, [#11627](https://github.com/sveltejs/svelte/pull/11627)) |
| 20 | + |
| 21 | + |
| 22 | +--- |
| 23 | + |
| 24 | +## Community Showcase |
| 25 | + |
| 26 | +**Apps & Sites built with Svelte** |
| 27 | + |
| 28 | +- [Onlook](https://onlook.dev/) is a chrome extension that enables designers to contribute to their team's UI codebase |
| 29 | +- [Fluid Type Generator](https://fluid-type.tolin.ski/) is a modern fluid type generator built with Svelte 5 |
| 30 | +- [LCH Palette Generator](https://github.com/pauslyapp/lch-palette) is a tool that allows you to easily create and save gradient palettes to be used in UI design |
| 31 | +- [Typepost](https://dezain.io/typepost/) is a simple text post generator for social media |
| 32 | +- [Equimake](https://equimake.com/) is a collaborative real-time 3D platform for learners, gamers, artists, and coders |
| 33 | +- [svelte.dev-machine](https://github.com/Neosoulink/svelte.dev-machine) is a physical based animation to replicate the Svelte machine on the svelte.dev homepage |
| 34 | + |
| 35 | + |
| 36 | +**Learning Resources** |
| 37 | + |
| 38 | +_Featuring Svelte Contributors and Ambassadors_ |
| 39 | +- [Svelte 5: Compiler, Signals, and Web App Performance](https://www.youtube.com/watch?v=mjYt35lN3-k) by JSJ 627 with Rich Harris |
| 40 | +- [Svelte London - May 2024](https://www.youtube.com/watch?v=EggM2qMzqdU) |
| 41 | +- This Week in Svelte - deep dives into the Svelte changelog and new learnings from the week: |
| 42 | + - [3 May](https://www.youtube.com/watch?v=8FXwOtj5NpY) |
| 43 | + - [10 May](https://www.youtube.com/watch?v=3WcU7imp0lQ) |
| 44 | + - [17 May](https://www.youtube.com/watch?v=O1VoD-xhYqs) |
| 45 | + - [24 May](https://www.youtube.com/watch?v=HDjPn8FH-X0) |
| 46 | + |
| 47 | + |
| 48 | +_To Read_ |
| 49 | + |
| 50 | +- [Securing Your SvelteKit App](https://captaincodeman.com/securing-your-sveltekit-app) and [Prevent Waterfalls from Multiple SvelteKit Server Hooks in sequence](https://captaincodeman.com/prevent-waterfalls-from-multiple-sveltekit-server-hooks-in-sequence) by Captain Codeman |
| 51 | +- [Svelte 5 Todo App with Firebase](https://code.build/p/svelte-5-todo-app-with-firebase-X1Tr3J) by Jonathan Gamble |
| 52 | + |
| 53 | + |
| 54 | +_To Watch_ |
| 55 | + |
| 56 | +- [Svelte 5 Runes Demystified](https://www.youtube.com/playlist?list=PLBvLZ-dkskrKpA01nOZiQE_1SBFyFNB-6) by Peter Makes Websites Ltd |
| 57 | +- [How to Build an eCommerce Store with SvelteKit](https://www.youtube.com/watch?v=S1lK4eJH0tI&t=6s) by Crystallize |
| 58 | + |
| 59 | + |
| 60 | +**Libraries, Tools & Components** |
| 61 | + |
| 62 | +- [Floating UI Svelte](https://github.com/skeletonlabs/floating-ui-svelte) is a library for positioning floating elements and handling interaction |
| 63 | +- [Svelte Animated Pixels](https://github.com/tncrazvan/svelte-animated-pixels) provides an easy way to create pixelated canvas animations by just declaring maps of pixels a strings |
| 64 | +- [SvelteKit Passkey Template](https://github.com/passlock-dev/svelte-passkeys) is a SvelteKit template project featuring Passkey authentication, Google sign in and mailbox verification |
| 65 | +- [svelte-infinite](https://github.com/ndom91/svelte-infinite) is an infinite scrolling library designed for Svelte 5 with runes |
| 66 | +- [svelte-next](https://github.com/shinokada/svelte-next) attempts to automated Svelte library updates |
| 67 | + |
| 68 | + |
| 69 | +That's it for this month! Let us know if we missed anything on [Reddit](https://www.reddit.com/r/sveltejs/) or [Discord](https://discord.gg/svelte). |
| 70 | + |
| 71 | +Until next month 👋 |
0 commit comments