Gustav Hansen
stav.dev
Gustav Hansen
@stav.dev
Frontend Engineer. More questions than answers. Into (F)OSS, information architecture, a11y, inclusive design and collaboration.
Reposted by Gustav Hansen
Hell yeah
November 6, 2025 at 9:56 PM
Reposted by Gustav Hansen
Good news!

Range syntax for style queries and if() functions has shipped in Chrome!

Check it out:

una.im/range-style-...
una.im | Range Syntax for Style Queries
Learn how to use the new range syntax for CSS style queries and the if() function.
una.im
November 12, 2025 at 10:55 PM
Reposted by Gustav Hansen
Just finished watching this incredible talk by Dr. Greg Wilson (sadly I can't find a bsky account for him, find him at third-bit.com ) which cites a lot of great work including that of the incomparable @grimalkina.bsky.social - really a masterclass, I highly recommend it.
really interesting reading list wrapped in a video essay about how to train new software developers about a humanist perspective to software

also, 10/10 title

www.youtube.com/watch?v=f86K...
Cocaine and Conway's Law
YouTube video by Greg Wilson
www.youtube.com
October 29, 2025 at 5:57 AM
Reposted by Gustav Hansen
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
November 13, 2025 at 9:03 PM
Reposted by Gustav Hansen
🚀 TanStack DB 0.5 is here with Query-Driven Sync

Your component's query IS the API call. No custom endpoints. No GraphQL resolvers. Just write your query and DB figures out exactly what to fetch.

Details 🧵👇
November 12, 2025 at 10:08 PM
Reposted by Gustav Hansen
This is an EXCELLENT write up on Cloudflare Durable Objects by @boristane.bsky.social.

Took me a while to 'get it's as well, but once you do it's genuinely the coolest cloud service to be released in years. So many applications.

boristane.com/blog/what-ar...
Boris Tane
Notes from 2 years of building with Cloudflare Durable Objects
boristane.com
November 9, 2025 at 12:03 PM
Reposted by Gustav Hansen
I dug into progressive image rendering and found a bunch of common assumptions aren't quite true.

➡️ JPEG & WebP progressive-renders worse in Safari
➡️ AVIF _does_ support progressive
➡️ But JPEG XL in Safari doesn't
➡️ JPEG XL decodes much slower than AVIF
⬇️ and more

jakearchibald.com/2025/present...
The present and potential future of progressive image rendering
Exploring progressive image rendering across JPEG, PNG, WebP, AVIF, and JPEG XL.
jakearchibald.com
October 16, 2025 at 10:16 AM
Reposted by Gustav Hansen
Dr. Cat Hicks (@grimalkina.bsky.social) gave one of my very favorite keynotes of all time at #positconf this year 🥹 It really made my heart glow, and now that all the conf talks are on YouTube, you can watch it even if you missed conf!! #databs #rstats #python

www.youtube.com/watch?v=B-bM...
The Psychology of Technologists (Cat Hicks, Catharsis Consulting) | posit::conf(2025)
YouTube video by Posit PBC
www.youtube.com
November 8, 2025 at 12:35 AM
Reposted by Gustav Hansen
The @firefoxdevtools.bsky.social JSON viewer got better in @firefoxnightly.bsky.social : the console offers access to the original json data via `$json`.
This allows to easily manipulate the underlying data to get what you want
November 7, 2025 at 11:40 AM
Word 🧵
For a while now, my dream was for people to abolish browser-like environments like JSDOM and start testing their components in the actual browser.

Vitest made that reality.

My next dream is for us to abandon the practice of running all E2E tests against ONE app instance.
November 7, 2025 at 5:24 PM
Reposted by Gustav Hansen
For a while now, my dream was for people to abolish browser-like environments like JSDOM and start testing their components in the actual browser.

Vitest made that reality.

My next dream is for us to abandon the practice of running all E2E tests against ONE app instance.
November 7, 2025 at 2:39 PM
Reposted by Gustav Hansen
📣 Huge news: MSW ships a first-class support for Server-Sent Events! Develop, test, and debug your apps with the new `sse()` API.

Learn more: mswjs.io/blog/server...
Server-Sent Events Are Here!
First-class support for mocking Server-Sent Events lands in MSW.
mswjs.io
November 5, 2025 at 3:17 PM
Reposted by Gustav Hansen
Some birdy (thanks @tunetheweb.com) told me that Chrome supports split views behind a flag. 😲 Good stuff!

chrome://flags#side-by-side
November 2, 2025 at 3:16 PM
Reposted by Gustav Hansen
Neat lil learning from today’s @perfnow.nl (via Umar Hansa):

You can now throttle individual requests in Chrome!

Neat for experimenting with stuff like
- lazy-loading: does the UI look okay if this chunk takes MUCH longer to arrive
- resilience: what happens if this specific CDN is extremely slow
October 30, 2025 at 5:29 PM
Reposted by Gustav Hansen
✂️ 👀

Playing a bit wit import-export hopping, through re-exports & workspaces. Powered by Knip & new language server.

Would you use this? What else do you think should it do?

Another raw vid with ideas in first comment 👇
October 22, 2025 at 1:05 PM
Reposted by Gustav Hansen
✍️ Solved by Modern CSS: Section Layout

A new interactive article about a typical section layout and exploring how to make it more dynamic with modern CSS. Happy reading!

ishadeed.com/article/mode...
Solved By Modern CSS: Section Layout
Building a typical section design with modern CSS.
ishadeed.com
October 23, 2025 at 7:20 PM
Imagine being on call and having to find out where it all started. 🤯

aws.amazon.com/message/1019...
Summary of the Amazon DynamoDB Service Disruption in Northern Virginia (US-EAST-1) Region
aws.amazon.com
October 23, 2025 at 5:36 PM
Reposted by Gustav Hansen
very good talk by @samselikoff.com about App Router instant navigations and "use cache", clarified my mental model a lot
Next.js Conf 2025
YouTube video by Vercel
www.youtube.com
October 23, 2025 at 3:54 PM
Reposted by Gustav Hansen
Vitest 4 is out!

- Browser Mode is Stable
- Visual Regression Testing
- Improved Debugging
- Pool Stabilization
- New APIs
- Bug Fixes

Stay updated with our blog post:

vitest.dev/blog/vitest-4
Announcing Vitest 4.0
Vitest 4.0 Release Announcement
vitest.dev
October 22, 2025 at 3:43 PM
Reposted by Gustav Hansen
I wrote a proposal for improving client assets management on Vite SSR application by introducing `?assets` query import. It includes many examples to demonstrate how it can be used in various routers and frameworks setup. Feedback is appreciated! github.com/vitejs/vite/...
RFC: Client assets metadata API for SSR · vitejs vite · Discussion #20913
This proposal introduces a new API that enables server code to access client runtime assets metadata required for server-side rendering in a framework agnostic way. This feature is currently protot...
github.com
October 15, 2025 at 4:24 AM
Reposted by Gustav Hansen
This is making me feel warm and fuzzy inside about open source.

There aren't many industries where companies contribute to improvements in things that directly benefit their competitors. Kinda crazy when you think about it, I imagine this blows the brains of non-techy C-suites quite often
Those benchmarks from @t3.gg revealed some interesting issues in Workers. Happy to say it's all fixed now, save for some lingering next.js-specific stuff we're continuing to work on. Thanks for the reproducible test cases, @t3.gg.

Excessive details in blog post: blog.cloudflare.com/unpacking-cl...
October 14, 2025 at 9:05 PM
Reposted by Gustav Hansen
The Unified Toolchain for the Web

We are thrilled to announce Vite+: A unified, Rust-powered toolchain and drop-in upgrade for @vite_js.

Read the full vision and learn about our sustainable licensing model (free for individuals, OSS & small businesses).

voidzero.dev/posts/announ...
Announcing Vite+
Introducing Vite+, a unified toolchain for JavaScript.
voidzero.dev
October 13, 2025 at 5:35 PM
Reposted by Gustav Hansen
Why have I never heard of the eslint config inspector before? That thing is amazing 🤩
GitHub - eslint/config-inspector: A visual tool for inspecting and understanding your ESLint flat configs.
A visual tool for inspecting and understanding your ESLint flat configs. - eslint/config-inspector
github.com
October 9, 2025 at 12:18 PM