Benoit C. 🤓
banner
bcharbonnier.bsky.social
Benoit C. 🤓
@bcharbonnier.bsky.social
Frontend geek at https://symphony.com
https://benoitcharbonnier.com/
🇫🇷🤓🧑‍🧑‍🧒
Reposted by Benoit C. 🤓
streamHTMLUnsafe() was presented at TPAC last week. Finally, an API that lets you easily use the streaming HTML parser from JavaScript! Here's a quick overview:
November 19, 2025 at 12:00 AM
Reposted by Benoit C. 🤓
Europe’s cookie nightmare is finally crumbling 🍪 The European Commission wants browsers to manage cookie preferences instead of pop-ups on every website. Finally! Details here 👇 www.theverge.com/news/823788/...
Europe’s cookie nightmare is crumbling
The seven-year nightmare is nearly over
www.theverge.com
November 19, 2025 at 1:29 PM
Reposted by Benoit C. 🤓
ECMAScript excitement 😉

Congrats to Eemeli Aro @mozilla.org on advancing Import Text to Stage 2 at TC39 today 🎉

It uses an import attribute for easy loading.

import text from "path/to/file.txt" with { type: "text" };

github.com/eemeli/propo...
GitHub - eemeli/proposal-import-text: A TC39 proposal for importing text
A TC39 proposal for importing text. Contribute to eemeli/proposal-import-text development by creating an account on GitHub.
github.com
November 18, 2025 at 7:34 AM
Reposted by Benoit C. 🤓
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 Benoit C. 🤓
Type Stripping (TS) are now stable in @nodejs.org v25.2.0. Enjoy running TypeScript (TS) code natively with Node.js 🔥

github.com/nodejs/node/...
Release 2025-11-11, Version 25.2.0 (Current), @aduh95 · nodejs/node
Notable Changes [a37c01e6a1] - (SEMVER-MINOR) lib: add options to util.deprecate (Rafael Gonzaga) #59982 [4fbb1ab101] - lib: throw from localStorage getter on missing storage path (René) #60351 [7...
github.com
November 12, 2025 at 8:35 AM
Reposted by Benoit C. 🤓
Firefox just unflagged support for CSS @ scope 🎉

Soon available in all browsers
November 4, 2025 at 6:08 PM
Reposted by Benoit C. 🤓
apps.apple.com was rewritten in svelte ⚡🧡
November 3, 2025 at 7:30 PM
Reposted by Benoit C. 🤓
✍️ New Article: Use Cases for Field Sizing

A quick look at field-sizing and where it can be used. I hope this will land in Firefox and Safari soon. The good thing? We can use it as an enhancement.

🔗 ishadeed.com/article/fiel...
November 1, 2025 at 6:27 AM
Reposted by Benoit C. 🤓
Safari 26.1 arrives today. What does this bring developers? Many improvements to Anchor Positioning. A refactor of how WebKit handles CSS Units, bringing relative units (rlh, ic, cap, cqw, cqi, cqmin, cqmax) to SVG for the first time. And many other fixes.

webkit.org/blog/17541/w...
WebKit Features for Safari 26.1
Today, Safari 26.1 is available with iOS 26.1, iPadOS 26.1, macOS Sequoia 26.1 and visionOS 26.1, as well as for macOS Sequoia and macOS Sonoma.
webkit.org
November 3, 2025 at 10:03 PM
Reposted by Benoit C. 🤓
🔥 Hot off the press 🔥

You can you can finally style anchored elements based on their fallback position in CSS!

Meet the CSS anchored container query 🤝

container-type: anchored
@‎container anchored(fallback: )

(landing in Chrome 143)

developer.chrome.com/blog/anchore...
Detect fallback positions with anchored container queries from Chrome 143  |  Blog  |  Chrome for Developers
Detect fallback positions with anchored container queries from Chrome 143
developer.chrome.com
October 30, 2025 at 1:39 PM
Reposted by Benoit C. 🤓
today we landed a @svelte.dev feature i'm pretty stoked about — we call it 'forking', and it lets you run state changes offscreen and later choose whether to commit them (e.g. user hovers on a link, preload data in case they click)

- docs svelte.dev/docs/svelte/...
- demo svelte.dev/playground/a...
forking monkeys • Playground • Svelte
Web development for the rest of us
svelte.dev
October 25, 2025 at 7:11 PM
Reposted by Benoit C. 🤓
Match URLs with a powerful, standardized syntax using the URL Pattern API → goo.gle/47iTr3o

Now part of Baseline, this API provides a built-in way to create URL pattern matchers that can be used against URLs or individual URL components.
October 23, 2025 at 9:00 PM
Reposted by Benoit C. 🤓
Don't [...spread] or .split() your strings!

Use Intl.Segmenter API. Available in every JS runtime
October 23, 2025 at 2:55 PM
Reposted by Benoit C. 🤓
📄 Parse HTML input with the new parseHTMLUnsafe() method → goo.gle/4mXOH9d

Now part of Baseline, this static method creates a new Document instance from an HTML string and allows for optional sanitization.
October 21, 2025 at 4:00 PM
Reposted by Benoit C. 🤓
Did we all celebrate that `::details-content` works in all major browsers now? 🎉

developer.mozilla.org/en-US/docs/W...
October 20, 2025 at 5:32 PM
Reposted by Benoit C. 🤓
🚀 On Wednesday, we shipped v0.208. Let's dive into all the additions.

Zed on Windows is here at last! 🪟

zed.dev/blog/zed-for...
Windows When? Windows Now - Zed Blog
From the Zed Blog: Zed for Windows is finally here. Download it today.
zed.dev
October 17, 2025 at 6:39 PM
Reposted by Benoit C. 🤓
I said 36 positions, but in reality, they are even more because within each position, we can control the alignment of the element using justify-self and align-self.

36 positions, 2 axes, 4 alignment values per axis. I let you do the count! 🫣
October 17, 2025 at 10:37 AM
Reposted by Benoit C. 🤓
All of the colors are calculated based on a single CSS variable using relative oklch, so you can change the theme with just one line.

--tint: green;

Modern CSS is amazing! 😲
October 14, 2025 at 10:49 PM
Reposted by Benoit C. 🤓
With all the excitement of (Same-Document) View Transitions (and more VT features) becoming Baseline Newly available (yay! 🎉), one might overlook the inclusion of the moveBefore() method.

This method is a pretty big deal as it allows you to move elements around the DOM while preserving their state.
October 15, 2025 at 9:57 AM
Reposted by Benoit C. 🤓
Svelte added a new type-safe utility for working with context 🔥
October 15, 2025 at 8:00 AM
Reposted by Benoit C. 🤓
No need to remember the syntax!
October 14, 2025 at 3:38 PM
Reposted by Benoit C. 🤓
Just discovered a new form remote function feature I hadn't seen before. Makes it a breeze to build progressively enhanced forms inside tables.

Here's one example where you need one form for every row. Just adding `.for(some-key)` makes it work 🧑‍🍳🤌
October 14, 2025 at 8:14 PM
Reposted by Benoit C. 🤓
Firefox now supports view transitions, the command and commandfor HTML attributes, and the moveBefore() method.

www.firefox.com/en-US/firefo...
Firefox 144.0, See All New Features, Updates and Fixes
www.firefox.com
October 14, 2025 at 3:20 PM
Reposted by Benoit C. 🤓
Please stop setting `width: 100vw` on the `body`.

It's unnecessary. By default, the `body` stretches horizontally as much as necessary.

It's problematic. Setting `width: 100vw` on it can cause overflow even if you remove the default `margin`... because the page may have a scrollbar.

#CSS
October 11, 2025 at 7:33 PM
Reposted by Benoit C. 🤓
ESLint v10.0.0 is coming! Check out our latest blog post for what to expect.

https://eslint.org/blog/...
October 6, 2025 at 2:11 PM