Geoff Rich
@geoffrich.net
Web dev, @svelte.dev maintainer, pianist Personal site with blogs and stuff: https://geoffrich.net
Tis the season and you know what that means: Advent of Svelte. Get your daily treat here: advent.sveltesociety.dev/2025 Don't forget to spread the love and huge thanks to everyone who works on this!
Advent of SvelteAdvent of Svelte - 2025
advent.sveltesociety.dev
A couple of weeks ago at @perfnow.nl I gave a talk called "Fine-grained everything". It's about @svelte.dev (obviously), and the new frontiers of framework-land, but it's also about some stubborn misconceptions in web performance circles Gift link: conffab.com/presentation...
Fine-grained everything
<p>Modern frameworks like Svelte are fast thanks to signal‑based fine‑grained reactivity, but performance is more than 60fps. This talk covers new approaches to build fast, reliable, data‑efficient ap...
conffab.com
A couple of days ago I told you that we're putting the band back together. Well. Here's the pisode! share.transistor.fm/s/a5f8c4c6
We're putting the band back together. | Svelte Radio | Episode 82
SummaryWe're putting the band back together. Svelte Radio is officially back. This first episode is a bit of catch-up. Not a ton of Svelte chatter. Look forward to many fun and interesting episodes. N...
share.transistor.fm
SvelteKit async SSR has landed! The future of Svelte is now here. Try it out along with the new remote functions! See the PR for some unfinished rough edges. Work continues on it while it's behind an experimental flag, but you can now play around with it! github.com/sveltejs/kit...
feat: async SSR by Rich-Harris · Pull Request #14447 · sveltejs/kit
This adds asynchronous SSR to an app that's using the latest version of Svelte (^5.39.3) and has opted in to the Svelte experimental.async option (and, ideally, the SvelteKit experimental.remot...
github.com
Super excited to announce the experimental release of asynchronous SSR in Svelte! github.com/sveltejs/sve... `await` expressions in your Svelte components can now be rendered on the server, meaning you don't need to render them inside boundaries with a `pending` snippet. Next up, streaming SSR!
Async SSR · sveltejs svelte · Discussion #16784
The Svelte team has been hard at work on asynchronous rendering, with client-side support and remote functions as our first two efforts. It’s time for the third: SSR. Background There are three cor...
github.com
Won a hackathon at work and was rewarded with this amazing/terrifying custom bobblehead 😶
SvelteKit remote functions are now available under an experimental flag. Docs here: svelte.dev/docs/kit/rem...
Remote functions • Docs • Svelte
Remote functions • Svelte documentation
svelte.dev
New post in a very long while lihautan.com/compile-svel...
Compile Svelte 5 in your head
Background5 years ago, I wrote Compile Svelte in your head. That was written for Svelte 3.But now, almost 1 year into Svelte 5 release, which introduce tons of new features, such as runes, fine-graine...
lihautan.com
📝 Please, can we have ARIA Notify Live regions suck and I hope we get a better solution soon! www.nicchan.me/blog/please-...
Please, can we have ARIA Notify - Nic Chan
A hate letter to live regions.
nicchan.me
Attachments are now out as part of Svelte 5.29! They're a better version of the `use:` actions that Svelte has historically used and let you "attach" actions like: <button {@attach tooltip('Hello')}>Hover me</button>
nice PR number for a nice new #svelte feature. Can't wait for this to drop! github.com/sveltejs/sve...
Svelte Summit Mega Thread Day 2! #SvelteSummit #SvelteSummitBarceloja
Missing everyone at #SvelteSummit! But glad I didn’t try to travel internationally with a 7-week-old lol
Svelte Summit 2025 Barcelona Day 1 Mega Thread time :D #SvelteSummit #SvelteSummit2025
Some personal news — I’m a dad now. Feeling very grateful and very tired.
wrote up some thoughts on how our interfaces are getting flatter, and how we might design with 💃 our bodies 🤸 in mind. 🧶 went ham on little yarn worlds wattenberger.com/thoughts/our...
Cat has decided my lap is the perfect nap spot while I work and I am here for it
love to see new CSS features that make old blog posts of mine obsolete! geoffrich.net/posts/svelte...
Detecting sticky positioning with Svelte actions - Geoff Rich
geoffrich.net
#CSS scroll-state() container queries in Chrome 133! @container scroll-state(stuck: top) { … } Read all about snapped, stuck and scrollable in this post: developer.chrome.com/blog/css-scr... ↪ nerdy.dev/scroll-state...
Front-end development is product development. This is one of the biggest things my first year at Heroku hammered home for me.
Holiday reading is the best. Love being able to read hundreds of pages in a day again
What does it mean for something to be Turing complete? I answer this question, and more, through a series of fully interactive Turing machine simulations! Play, pause, step forwards and backwards, and even write your own Turing machine programs in my latest blog post. samwho.dev/turing-machi...
Day 15 — the new `$inspect.trace(...)` rune gives you debugging superpowers. Add it to a function that runs inside a derived or effect, and you'll see detailed information about what caused it to re-run 🎁 docs svelte.dev/docs/svelte/... 🎁 demo svelte.dev/playground/d...
Day 5 — it's a three-in-one kind of day! `new MediaQuery(...)` lets you use media queries reactively. prefersReducedMotion is an instance of MediaQuery that makes it easier to respect users' accessibility preferences - docs svelte.dev/docs/svelte/... - demo svelte.dev/playground/8... there's more!
Day 1 — error boundaries! Wrap your code in a <svelte:boundary> and you can isolate and recover from unexpected errors. 🎁 docs svelte.dev/docs/svelte/... 🎁 tutorial svelte.dev/tutorial/sve...
🎅🎄🎁 ADVENT OF SVELTE 🎅🎄🎁 We're going to ship one thing a day every day from now until Christmas. Wish us luck! svelte.dev/blog/advent-... First up...
Advent of Svelte
Twenty-four days, twenty-four features
svelte.dev