Rick Viscomi
banner
rviscomi.dev
Rick Viscomi
@rviscomi.dev
Chrome DevRel at Google, web developer

rviscomi.dev
Reposted by Rick Viscomi
JPEG XL in Chromium update:

“[...] we would welcome contributions to integrate a performant and memory-safe JPEG XL decoder in Chromium. In order to enable it by default in Chromium we would need a commitment to long-term maintenance.”

groups.google.com/a/chromium.o...
November 22, 2025 at 7:57 AM
The amount of rapid innovation is kinda giving me whiplash though

So many great tools are coming out so quickly, to the point that you can't really settle into one because the next greatest thing is around the corner

But that's good, I guess?
November 21, 2025 at 2:44 PM
GitHub Copilot in VS Code has been my daily driver, but yesterday I decided to give Antigravity a try

The rumors are true, it's actually incredible
November 21, 2025 at 2:44 PM
Reposted by Rick Viscomi
Autocorrect has become our worst enema.
November 19, 2025 at 10:04 PM
Reposted by Rick Viscomi
A friend asked for science fiction book recommendations, so I made a list on Bookshop. Support independent bookstores as well as your local freelancer who reads a lot...

These are some of my favorites! #booksky

bookshop.org/lists/scienc...
Science fiction
My favorite science fiction books
bookshop.org
November 19, 2025 at 8:13 PM
Thanks! Just ordered All Systems Red from your link.
November 19, 2025 at 7:37 PM
This time every year I try to get through my reading list. Usually it's a bunch of sci-fi but this is first on my list.

PS: give me your sci-fi recommendations!
November 19, 2025 at 7:17 PM
Reposted by Rick Viscomi
The ::details-content CSS pseudo-element is now part of Baseline → goo.gle/3KOg08B

You can now style the expandable/collapsible contents of a
element, enabling smoother transitions and custom background colors for a better user experience.
November 7, 2025 at 4:41 PM
Reposted by Rick Viscomi
Command invokers soon to be baseline newly available!

Also field-sizing is finally here.

Some other nice changes too!
Curious about web technology coming to Safari? How about field-sizing, position-visibility, random(), scrollbar-color, hidden=until-found, auto-expanding
, command & commandfor, Largest Contentful Paint, CHIPS, scrollend event, Navigation API & more!

developer.apple.com/documentatio...
Safari 26.2 Beta Release Notes | Apple Developer Documentation
Released November 4, 2025 — 26.2 beta (20623.1.12)
developer.apple.com
November 5, 2025 at 8:49 PM
Reposted by Rick Viscomi
TIL that `dns-prefetch` is now baseline "newly available". I've been using this for ages, but apparently, it only started working in iOS Safari with version 26.

Here are the release notes: webkit.org/blog/17333/w...
November 5, 2025 at 6:09 PM
Reposted by Rick Viscomi
👀 Navigation API will be available in all browsers soon 🎉

Completely redefines the APIs used to build client-side routers / SPAs

🫤 History API: popState, link click.preventDefault() ...

✅ Navigation API: clean, centralized way to intercept navigation events 👌
November 5, 2025 at 9:35 AM
Reposted by Rick Viscomi
ECMAScript excitement 😉

Congrats to @manishearth.bsky.social on unflagging TC39 Stage 3 Temporal in V8 today. Heading for Chrome 144 🎉

By many metrics this new date-time API is the single biggest change to JS ever 🔥

V8 uses Boa's temporal_rs by @jason-williams.co.uk Kevin Ness & Manish 👍
November 4, 2025 at 7:49 PM
Reposted by Rick Viscomi
setHTML(), Trusted Types and the Sanitizer API. Ollie Williams shows how these APIs protect against XSS by sanitizing HTML safely and enforcing trusted types. Supported in Firefox Nightly and Chrome Canary, with wider adoption coming. #security #html

olliewilliams.xyz/blog/sanitiz...
November 3, 2025 at 1:03 PM
Reposted by Rick Viscomi
Why does "vibe coding" usually not lead to anything productive? A great person to answer is @addyosmani.bsky.social: working on Chrome for 10+ years, and is the author of the book Beyond Vibe Coding.

Watch or listen:

• YouTube: youtu.be/dHIppEqwi0g

• Spotify: open.spotify.com/episode/12dW...
October 29, 2025 at 8:40 PM
Reposted by Rick Viscomi
Building secure, real-time communication apps just got a major boost.

WebRTC Encoded Transforms are now a Baseline Newly Available feature, enabling high-performance, end-to-end encryption on encoded frames → goo.gle/3Iy3md6
October 29, 2025 at 4:00 PM
Reposted by Rick Viscomi
#JavaScript: When it comes to breaking up long tasks, the scheduler API seems quite convenient:

await scheduler.yield();

Alas, not supported by Safari yet: caniuse.com/mdn-api_sche...

Thankfully, providing your own fallback implementation is easy: web.dev/articles/opt...
Scheduler API: yield | Can I use... Support tables for HTML5, CSS3, etc
caniuse.com
October 16, 2025 at 3:48 PM
Reposted by Rick Viscomi
Deprecating XSLT in browsers. Chrome plans to remove XSLT (the XML transformation language) due to low usage and security risks. Deprecation starts in version 143, full removal in 155. WHATWG, Firefox, and Safari expressed support. #browser #chrome

groups.google.com/a/chromium.o...
October 28, 2025 at 3:31 PM
Reposted by Rick Viscomi
this is going to be so useful when it finally lands in node 24 and we can make the same router run front/backend cleanly. combined with view transitions? c'mon!

web.dev/blog/baselin...

(ht @ash.pink for sharing)
URLPattern is now Baseline Newly available  |  Blog  |  web.dev
URLPattern became Baseline Newly available as of September 15, 2025.
web.dev
October 28, 2025 at 7:44 PM
Apparently atob and btoa were carried over from Unix

I'm glad we have more modern (and sensibly named!) features
October 28, 2025 at 6:24 PM
atob was so confusingly named 😅
Decode base64 strings into byte arrays with Uint8Array.fromBase64() → goo.gle/4nPXxH9

Now part of Baseline, it's the preferred alternative to atob() for easier handling of binary data.
October 28, 2025 at 6:17 PM
Reposted by Rick Viscomi
✅ Newly Available: CookieChangeEvent

It lets you respond to cookie changes as they happen, using modern event-driven logic in your app or service worker. The event is fired when cookies are added, changed, or deleted.

Try now 👇
developer.mozilla.org/en-US/docs/...
CookieChangeEvent: CookieChangeEvent() constructor - Web APIs | MDN
The CookieChangeEvent() constructor creates a new CookieChangeEvent object which is the event type of the change event fired at a CookieStore when any cookie changes occur. This constructor is called by the browser when a change event occurs.
developer.mozilla.org
October 27, 2025 at 9:02 PM
Reposted by Rick Viscomi
🏆 And the Baseline Tooling Hackathon winners are... → goo.gle/47KQ6ve

Nearly 3,000 developers submitted hundreds of innovative projects, but only 3 could take home their share of the $10,000 prize pool.
October 27, 2025 at 9:11 PM
Reposted by Rick Viscomi
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 😔
JavaScript operator: await: Use at module top level | Can I use... Support tables for HTML5, CSS3, etc
caniuse.com
October 26, 2025 at 8:17 PM
Reposted by Rick Viscomi
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
Hardest part is that I'm rearchitecting how the capo.js package works so all of the validation logic can be more easily reused by this or any other plugins

The challenge is that it needs to work with both the DOM tree and BYO-ASTs
October 22, 2025 at 8:48 PM