Benoit C. πŸ€“'s Avatar

Benoit C. πŸ€“

@bcharbonnier

Frontend geek at https://symphony.com https://benoitcharbonnier.com/ πŸ‡«πŸ‡·πŸ€“πŸ§‘β€πŸ§‘β€πŸ§’

32
Followers
97
Following
26
Posts
14.07.2023
Joined
Posts Following

Latest posts by Benoit C. πŸ€“ @bcharbonnier

Web platform features explorer - JavaScript modules in service workers

Finally! You can now use JS modules in service workers (i.e. use `import` and `export` to organize your code in modules).

Thank you, Firefox, for adding support and joining other browser engines.

web-platform-dx.github.io/web-features...

24.02.2026 07:48 πŸ‘ 44 πŸ” 10 πŸ’¬ 3 πŸ“Œ 1
Video thumbnail

Out with :nth-child(), in with :sibling-index()! Just so satisfying to use.

* no Firefox yet

23.02.2026 20:39 πŸ‘ 146 πŸ” 19 πŸ’¬ 5 πŸ“Œ 5

Officially shipping in Chrome 147 πŸŽ‰

23.02.2026 20:40 πŸ‘ 97 πŸ” 8 πŸ’¬ 2 πŸ“Œ 0
Post image

In TypeScript just append string & {} to your union and autocomplete works again. 🎯

13.02.2026 15:42 πŸ‘ 5 πŸ” 2 πŸ’¬ 0 πŸ“Œ 0
Post image

This is actually super cool!

"Build modern desktop apps with #Java and your favorite web framework.

Krema is to the Java ecosystem what #Tauri is to #Rust β€” lightweight, native desktop applications powered by system webviews instead of a bundled browser."

github.com/krema-build/...

13.02.2026 17:30 πŸ‘ 4 πŸ” 2 πŸ’¬ 0 πŸ“Œ 0

Must read, seriously. The negative impact of AI on juniors and their ability to learn and grow has been a major questioning for me since GenAI started. Our industry is shooting itself in the foot, and this will have ripple effects for many years.

10.02.2026 07:17 πŸ‘ 28 πŸ” 11 πŸ’¬ 5 πŸ“Œ 0
Preview
WebKit features for Safari 26.3 Safari 26.3 is here, with practical improvements for performance and user experience.

Safari 26.3 is here with Zstandard file compression, Navigation API’s AbortSignal for better control in single-page apps, and fixes for anchor positioning, multi-column layouts, & more. Plus fullscreen video now dims surroundings in visionOS.

webkit.org/blog/17798/webkit-features-for-safari-26-3/

11.02.2026 19:26 πŸ‘ 61 πŸ” 9 πŸ’¬ 0 πŸ“Œ 0

TypeScript 6.0 Beta is out πŸŽ‰

πŸ”Ά Temporal
πŸ”Ά Map#getOrInsert
πŸ”Ά RegExp.escape
πŸ”Ά #/ prefix for Package Imports

New defaults!
πŸ”Ά --target=ES2025
πŸ”Ά "use strict"
πŸ”· --strict

Deprecations!
πŸ—‘οΈ baseUrl, outFile
πŸ—‘οΈ import assertions
πŸ—‘οΈ `module` namespaces
πŸ—‘οΈ module: amd
πŸ—‘οΈ moduleResolution: node
πŸ—‘οΈ target: ES5

11.02.2026 20:10 πŸ‘ 86 πŸ” 10 πŸ’¬ 3 πŸ“Œ 1
Preview
Frame - Modern Media Conversion A lightning-fast, privacy-focused media converter for macOS, Windows, and Linux. Built with Tauri and Rust, Frame puts the power of FFmpeg in a beautiful, native interface.

Another hour... another COOL Svelte project: www.framegui.app

11.02.2026 20:21 πŸ‘ 16 πŸ” 2 πŸ’¬ 1 πŸ“Œ 0

CSS Anchor Positioning is now baseline.

Firefox 147 ships today with full support. Chrome, Edge, Safari β€” all on board. Position elements relative to other elements. No JavaScript.

Here's the 60-second rundown...

13.01.2026 22:10 πŸ‘ 16 πŸ” 3 πŸ’¬ 1 πŸ“Œ 0
Preview
Date is out, Temporal is in Temporal is the Date system we always wanted in JavaScript. It's extremely close to being available so Mat Marquis thought it would be a good idea to explain exactly what is better about this new Java...

Temporal shipped in Chrome 144 yesterday, so only Safari remains.

Here’s @wil.to explaining why it’s better piccalil.li/blog/date-is...

14.01.2026 08:43 πŸ‘ 64 πŸ” 16 πŸ’¬ 5 πŸ“Œ 3
screenshot of homepage showing examples of symbols that you can click on and get a dedicated page to copy codes from.

screenshot of homepage showing examples of symbols that you can click on and get a dedicated page to copy codes from.

Good for #webdev and other uses.

fontgenerator.design/symbols

Curated symbol sets for #math, #currency, arrows, geometry, decorative marks, tech/UI, and punctuation. Tap any symbol to copy/paste instantly.

#HTML #CSS #frontend

25.12.2025 15:59 πŸ‘ 17 πŸ” 5 πŸ’¬ 3 πŸ“Œ 0
Preview
WebKit Features for Safari 26.2 Safari 26.2 is a big release.

Safari 26.2 is here with 65 features + 165 bug fixes β€” including field-sizing, Navigation API, Largest Contentful Paint, command & commandfor, CHIPS opt-in partitioned cookies, scrollend event, random(), WebGPU in WebXR, scrollbar-color, hidden=until-found and much more! webkit.org/blog/17640/w...

12.12.2025 18:44 πŸ‘ 197 πŸ” 37 πŸ’¬ 11 πŸ“Œ 16
Video thumbnail

I know it's not 2026 yet, but we can have nice things!

πŸͺ— Here's an accordion component that only uses web platform built-in HTML and CSS features. No need for JS code, no component library.

πŸ”— patrickbrosset.com/lab/accordion/

04.12.2025 14:11 πŸ‘ 12 πŸ” 4 πŸ’¬ 0 πŸ“Œ 0

You can only apply a few css properties IIRC. Anything changing the font weight / decoration can’t be used

04.12.2025 12:27 πŸ‘ 0 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

About to have CSS ANCHOR POSITIONING FULLY CROSS-BROWSER!!

02.12.2025 23:52 πŸ‘ 152 πŸ” 18 πŸ’¬ 4 πŸ“Œ 4
Video thumbnail

Want to avoid layout shift when you remove scrolling on popover or dialog opening?

Simple, use the new `scrollbar-gutter: stable` CSS rule on your scroll container (likely <body>).

Learn more at MDN: developer.mozilla.org/en-US/docs/...

#StylishHTML

03.12.2025 17:03 πŸ‘ 4 πŸ” 2 πŸ’¬ 1 πŸ“Œ 0
Preview
WebGPU is now supported in major browsers Β |Β  Blog Β |Β  web.dev Read about the biggest web graphics launch since WebGL. WebGPU is supported across major browsers, bringing unparalleled performance to the web.

Mozilla, Microsoft, Google, Intel, Apple all came together to celebrate this great milestone:

WebGPU is now supported in major browsers!

Check out our post.

25.11.2025 17:07 πŸ‘ 83 πŸ” 16 πŸ’¬ 1 πŸ“Œ 2
ts-blank-space A small, fast, pure JavaScript type-stripper that uses the official TypeScript parser.

Type Stripping in Node is enabled by default and declared stable as of Node v25.2.

Just run: node index.ts

It is uses the code location-preserving transform demonstrated by ts-blank-space. This means sourcemaps are optional.

bloomberg.github.io/ts-blank-spa...

24.11.2025 09:20 πŸ‘ 6 πŸ” 2 πŸ’¬ 0 πŸ“Œ 0
Preview
The Web Install API is ready for testing We're happy to announce that the Web Install API is now ready for testing on your own site, as an origin trial in Microsoft E

On the Edge team, we think web apps should be easier to install.
The default browser install button is great, but we'd like something which you can use on your own site, how and when you want it.

That's why we're proposing the Web Install API, which you can now test!

24.11.2025 17:02 πŸ‘ 83 πŸ” 13 πŸ’¬ 4 πŸ“Œ 5

Nowadays, we can do better:

```
box-shadow: 0 1px 2px
rgb(from currentcolor r g b/ .65)
```

Cross-browser since September 2024.

#tinyCSStip #CSS

22.11.2025 15:25 πŸ‘ 29 πŸ” 6 πŸ’¬ 0 πŸ“Œ 0
box-shadow: 
  	0 1px 2px 
	color-mix(in srgb, transparent 35%, currentColor)

box-shadow: 0 1px 2px color-mix(in srgb, transparent 35%, currentColor)

#tinyCSStip

Want the shadow of an element or some other visual to be a semitransparent version of the `currentColor`?

Use `color-mix()`!

Cross-browser, btw. 😼

10.07.2023 08:14 πŸ‘ 4 πŸ” 1 πŸ’¬ 0 πŸ“Œ 2
Post image

TIL that MDN has a ctrl+k search

23.11.2025 01:30 πŸ‘ 22 πŸ” 5 πŸ’¬ 1 πŸ“Œ 0
Preview
Streaming file uploads Β· Issue #14773 Β· sveltejs/kit Describe the problem When you submit a form, and JS is available, we POST a lightly-seasoned FormData object to the endpoint. Whenever you post form data with fetch, it defaults to multipart encodi...

Streaming file uploads via a custom binary format just got merged into SvelteKit! In a follow up PR (github.com/sveltejs/kit...) upload progress will be handled too! github.com/sveltejs/kit...

21.11.2025 02:05 πŸ‘ 39 πŸ” 2 πŸ’¬ 1 πŸ“Œ 1
Chrome DevTools showing that Temporal.Now does work, and that other properties are also available.

Chrome DevTools showing that Temporal.Now does work, and that other properties are also available.

Temporal you ask? In all browsers you ask?

Well, I'm told it's coming to Chrome/Edge 144. So, like, very very soon (as in, January).

It's already in Firefox. And being implemented in Safari too.

21.11.2025 13:56 πŸ‘ 35 πŸ” 7 πŸ’¬ 1 πŸ“Œ 0
Video thumbnail

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:

19.11.2025 00:00 πŸ‘ 75 πŸ” 4 πŸ’¬ 3 πŸ“Œ 3
Preview
Europe’s cookie nightmare is crumbling The seven-year nightmare is nearly over

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/...

19.11.2025 13:29 πŸ‘ 276 πŸ” 56 πŸ’¬ 5 πŸ“Œ 21
Preview
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.

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...

18.11.2025 07:34 πŸ‘ 54 πŸ” 9 πŸ’¬ 0 πŸ“Œ 5
Preview
una.im | Range Syntax for Style Queries Learn how to use the new range syntax for CSS style queries and the if() function.

Good news!

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

Check it out:

una.im/range-style-...

12.11.2025 22:55 πŸ‘ 52 πŸ” 16 πŸ’¬ 3 πŸ“Œ 1
Preview
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...

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/...

12.11.2025 08:35 πŸ‘ 5 πŸ” 2 πŸ’¬ 0 πŸ“Œ 0