Jake Archibald
@jakearchibald.com
📤 20003
📥 452
📝 1037
Developer of sorts at
@firefox.com
. No thought goes unpublished. He/him.
pinned post!
CSS uses a complex algorithm to decide how to animate transforms. If you get it wrong, as many folks do, you end up with an unnatural animation. Here's how it works, and how to avoid the pitfalls.
jakearchibald.com/2025/animati...
loading . . .
Animating zooming using CSS: transform order is important… sometimes
How to get the right transform animation.
https://jakearchibald.com/2025/animating-zooming/
6 months ago
13
255
53
reposted by
Jake Archibald
Ana Tudor
about 18 hours ago
The video is about scroll-*triggered* animations which aren't even in in Chrome stable. Not scroll-*driven* animations, which work to a certain extent in every major browser, even if enabling a flag is required. That aside, I'd expect Chrome devs to be able to use Canary...
1
8
1
It's really sad that Chrome laid off one of the world's best CSS developer-designers, and now they have to fake demos of web features.
youtu.be/d8J0vs-bEPE?...
loading . . .
Create Scroll-Triggered Animations with CSS
YouTube video by Chrome for Developers
https://youtu.be/d8J0vs-bEPE?si=l7YPHL8Tws-0iiBL
2 days ago
14
278
33
By the way, if TikTok/Instagram/YouTube are your thing, the videos are being published there too.
www.tiktok.com/@firefoxwebd...
www.instagram.com/firefoxwebde...
www.youtube.com/@FirefoxWebD...
loading . . .
Firefox for Web Developers's Creator Profile
https://www.tiktok.com/@firefoxwebdevs
3 days ago
1
26
1
reposted by
Jake Archibald
Firefox for Web Developers
3 days ago
HTML hidden=until-found and auto-opening <details> is newly baseline… or is it? Here's how it works, and issues to watch out for:
loading . . .
3
101
12
An absolutely wild and gutting part of this role is having so many people desperate for you to fail. I know I know tiny violin etc etc. Anyway, new video out later today!
3 days ago
26
120
4
reposted by
Jake Archibald
Firefox for Web Developers
5 days ago
HTML invoker commands are newly baseline! Here's how they work…
loading . . .
6
144
33
I can't say it normally. I either have to say "tater tots" with an American accent or "potato tots" with a Matt Berry accent.
7 days ago
3
33
0
reposted by
Jake Archibald
Firefox for Web Developers
7 days ago
JavaScript declarations in conditionals was discussed at TC39 recently, but consensus broke down over one key detail. How do you think it should behave?
loading . . .
17
99
21
reposted by
Jake Archibald
Firefox for Web Developers
10 days ago
❓ Do you have a need for range inputs with 3+ sliders on the web? Folks are scoping out this work, and want to know your use-cases ⬇️
https://github.com/openui/open-ui/issues/1337
1
16
9
reposted by
Jake Archibald
Firefox for Web Developers
10 days ago
In Firefox 146 DevTools, long lists of unused CSS custom properties collapse, decluttering the UI, and improving performance
loading . . .
1
52
6
reposted by
Jake Archibald
Firefox for Web Developers
11 days ago
CSS text-decoration-inset landed in Firefox 146! Here's how it works:
loading . . .
6
195
46
reposted by
Jake Archibald
Firefox for Web Developers
12 days ago
A bunch of web platform features and bug fixes landed in Firefox 146. There'll be more videos about the highlights soon, but in the meantime, here's a summary:
https://developer.mozilla.org/en-US/docs/Mozilla/Firefox/Releases/146
loading . . .
Firefox 146 release notes for developers (Stable) - Mozilla | MDN
This article provides information about the changes in Firefox 146 that affect developers. Firefox 146 was released on December 9, 2025.
https://developer.mozilla.org/en-US/docs/Mozilla/Firefox/Releases/146
0
27
6
reposted by
Jake Archibald
Firefox for Web Developers
13 days ago
CSS @scope has landed in Firefox 146, making it a new baseline feature. Here's how it works:
loading . . .
1
69
21
I asked
@remysharp.com
to take one fuckin picture of me and
@brucel.bsky.social
14 days ago
8
52
1
I'm going to be speaking at this! Really looking forward to it.
add a skeleton here at some point
14 days ago
0
25
2
reposted by
Jake Archibald
Firefox for Web Developers
17 days ago
AV1 won an Emmy! We're proud to be part of the Alliance for Open Media, where the codec was developed. But the story's not over… AV2 is just around the corner.
https://blog.mozilla.org/en/mozilla/av1-video-codec-wins-emmy/
2
82
20
reposted by
Jake Archibald
Ana Rodrigues
17 days ago
🖤 I’ve been told that this was my best rendition of this talk and i’m still riding this high of how amazing btconf was as a whole. Now it’s time to write up the blog post. Okay, maybe in a few days 😁
add a skeleton here at some point
2
18
4
reposted by
Jake Archibald
Firefox for Web Developers
17 days ago
Oh hello! We've had a bit of a rename & rebrand (formally FirefoxDevTools), but the content will be roughly the same as it's been for the past few months. We're looking forward to posting more on web platform & DevTools features.
2
73
10
reposted by
Jake Archibald
Phil Hawksworth
19 days ago
It appear that the word is out - biscuit parings are back for one last time at
@heypresents.com
. And isn't it just like
@jakearchibald.com
to have demands!? Join us for the final All Day Hey next year. (A few Earlybird tickets still available if you are quick!)
heypresents.com/conferences/...
loading . . .
7
31
7
I'm playing around with JPEG XL's "JPEG repackaging" feature. It repackaged a 147kb JPEG down to 126kb, but on my Pixel 10, the new file takes 78ms to decode, vs 10ms for the JPEG. At 3g+ speeds… that feels like a performance loss.
random-stuff.jakearchibald.com/apps/img-dec...
loading . . .
Image decoder benchmark
https://random-stuff.jakearchibald.com/apps/img-decode-bench/
19 days ago
7
39
4
reposted by
Jake Archibald
Firefox for Web Developers
20 days ago
Another API proposal from TPAC: CSS routes and navigation queries, meaning less JavaScript is needed for view transitions!
https://drafts.csswg.org/css-navigation-1/
https://github.com/w3c/csswg-drafts/issues/8685#issue-1653949919
loading . . .
3
47
7
reposted by
Jake Archibald
Firefox for Web Developers
21 days ago
We have Custom Elements, but do we also need Custom Attributes? This was discussed at TPAC. Is it something you'd like on the platform?
https://github.com/WICG/webcomponents/issues/1029
loading . . .
19
105
30
I've used
github.com/Nicxe/f1_sen...
to sync my living room lights to F1 flags
loading . . .
22 days ago
3
82
2
Flashback to 2022 when I bought tree lights with white cabling and it looked like Spiderman spaffed all over it.
23 days ago
6
48
0
jfc google what the fuck????
25 days ago
10
59
7
reposted by
Jake Archibald
Keith Cirkel
26 days ago
CSS is so powerful now, it's amazing looking through older CSS and seeing what can be replaced with a one-liner. I'm on the hunt for snippets that used to be multiple lines of CSS that can now be done in one. Show me what you got!
24
123
24
He got out of bed, made it 1 metre, had a lie down, got up, went back to bed.
26 days ago
7
90
4
Just overheard this in Pizza Express: Her: Do you have a red? Waiter: We have a Malbec, Chianti… Her: sorry i meant crayons
28 days ago
4
111
8
reposted by
Jake Archibald
Firefox for Web Developers
about 1 month ago
Out-of-order HTML patching, another proposal from TPAC, lets HTML be presented non-linearly, and a single file can update multiple parts of the page. Would this feature be useful to you?
loading . . .
12
141
33
reposted by
Jake Archibald
ROBBYDUDE
about 1 month ago
i just dont know
160
4531
929
I'm experimenting with this format. Is it… good? Like, should I do more of this kind of thing? Critical feedback welcome!
add a skeleton here at some point
about 1 month ago
26
117
4
reposted by
Jake Archibald
Rob Palmer
about 1 month ago
ECMAScript excitement 😉 Congrats to my coworker
@ashley-c.bsky.social
at TechAtBloomberg on advancing Await Dictionary to Stage 2.7 at TC39 today 🎉 Promise.all returns positional results as an array. Promise.allKeyed allows named results inside an object 👍
github.com/tc39/proposa...
4
167
31
reposted by
Jake Archibald
Bramus
about 1 month ago
New blog post: “Faking Two-Phase View Transitions with the Navigation API’s precommitHandler”
www.bram.us/2025/11/17/f...
By using two View Transitions when intercepting links with the Navigation API – one in the precommitHandler and one in the regular handler – you can fake a Two-Phase VT today!
loading . . .
Faking Two-Phase View Transitions with the Navigation API’s precommitHandler
By using two sequential View Transitions when intercepting links with the Navigation API – one in the precommitHandler and one in the regular handler – you can fake a Two-Phase View Transition today!
https://www.bram.us/2025/11/17/faking-two-phase-view-transitions-with-the-navigation-apis-precommithandler/
1
55
5
reposted by
Jake Archibald
Firefox for Web Developers
about 1 month ago
Two-phase view transitions, for faster cross-document transitions, were presented at TPAC last week. Here's a quick 3min overview…
https://www.youtube.com/watch?v=A6rO9RGmJgA
loading . . .
Two-phase view transitions
YouTube video by Jake Archibald
https://www.youtube.com/watch?v=Y_YqN49jqts
1
22
5
reposted by
Jake Archibald
Firefox for Web Developers
about 1 month ago
The W3C Security Web Application Guidelines Community Group wants to understand how developers are using specific web platform security features, and what the barriers are to the adoption. Take their survey here:
https://bit.ly/3JR6JML
loading . . .
Web security survey
Thanks for taking our survey about the usage of web platform security features. We're the W3C Security Web Application Guidelines Community Group (SWAG CG), and our mission is to develop guidelines f...
https://docs.google.com/forms/d/1-8DvgiB3AqrFU7tqe0GCoQsh6lfdOHHnUldOzMrtmeQ/viewform?pli=1&pli=1&pli=1&pli=1&edit_requested=true
1
9
11
reposted by
Jake Archibald
Ana Rodrigues
about 1 month ago
It's a wrap! I did five runs of this talk so it's time to overshare on my blog, as usual. 🤍
ohhelloana.blog/css-talk-fin...
loading . . .
Talking around about CSS: The final act
It's a wrap! Now it's time to talk about all the feelings I had in the process.
https://ohhelloana.blog/css-talk-final-act/
1
22
3
reposted by
Jake Archibald
Nicolas Chevobbe
about 2 months ago
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
4
98
29
Great, so
www.britishairways.com
🎉 Displays in geo language rather than user language 🎉 The language picker is at the bottom of a long page 🎉 The language picker is in the current language, so in order to select "United Kingdom", I need to know what that is in German
about 2 months ago
27
159
11
I tried to AI code some in-browser video decoding stuff. It made a mess. So I learned the APIs somewhat properly, and did a much better job, but it was still messy. Then I found
mediabunny.dev
and it just worked. Yay!
loading . . .
Mediabunny
A JavaScript library for reading, writing, and converting media files. Directly in the browser, and faster than anybunny else.
https://mediabunny.dev/
about 2 months ago
3
66
8
Last week I posted about a secret config in Firefox that made view transitions easier to debug. Folks said we should make it less secret. So we did.
loading . . .
about 2 months ago
2
101
16
JavaScript top-level await is no longer considered 'baseline' due to a pretty big Safari bug
caniuse.com/mdn-javascri...
The module graph fails in cases where two modules import a third at the same time. Demo:
random-stuff.jakearchibald.com/bug-repros/t...
It's best to avoid the feature for now 😔
loading . . .
JavaScript operator: await: Use at module top level | Can I use... Support tables for HTML5, CSS3, etc
https://caniuse.com/mdn-javascript_operators_await_top_level
about 2 months ago
10
149
44
@mikehall314.bsky.social
hmm kinda looks like the slide is introducing the panel
about 2 months ago
3
53
2
AV1 is crazy-good for encoding screencasts. 1:28 of video, higher-than-HD resolution, less than 2mb.
bugzilla.mozilla.org/show_bug.cgi...
There's not a lot of movement, but many codecs just don't handle that well.
loading . . .
1996198 - Guardian: Hit tests on fixed-bottom element are off by URL bar size
NEW (nobody) in Core - Layout: Positioned. Last updated 2025-10-24.
https://bugzilla.mozilla.org/show_bug.cgi?id=1996198#c0
about 2 months ago
2
30
3
reposted by
Jake Archibald
Wes Bos
about 2 months ago
Don't [...spread] or .split() your strings! Use Intl.Segmenter API. Available in every JS runtime
19
535
91
reposted by
Jake Archibald
Chrome for Developers
about 2 months ago
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.
1
33
8
📝 Importing vs fetching JSON JSON imports are now supported cross-browser, but when would you use them rather than fetch()?
jakearchibald.com/2025/importi...
loading . . .
Importing vs fetching JSON
They behave differently, so make sure you pick the right one.
https://jakearchibald.com/2025/importing-vs-fetching-json/
2 months ago
9
213
32
Aside from "it's the new W3C logo, with the text 'world wide web consortium' in a circle around the outside", what alt text would you use to describe this?
2 months ago
28
20
3
reposted by
Jake Archibald
Firefox for Web Developers
2 months ago
New in Firefox nightly (146.0a1 2025-10-19): large lists of unused CSS custom properties are collapsed by default. This not only reduces clutter, it also massively speeds up the rendering of the inspector panel in some cases.
loading . . .
2
59
10
c'mon bsky, support 60fps video!
2 months ago
2
16
2
We're currently working on devtools for view transitions in Firefox, but in the meantime, here's a little-known option that helps…
loading . . .
2 months ago
7
129
23
Load more
feeds!
log in