Today’s issue: Deno officially enters The Land Before Time cinematic universe, Discord reduces its WebSocket traffic by 40%, and I wait for OpenAI to send me a check for monetizing my middle school trauma.
Welcome to #325.
The last thing you remember seeing before waking up with a chest tattoo that says #UseThePlatform
It’s a magical place where all of your wildest dreams come true – as long as your dreams are to learn about new browser features and nothing else.
Today, we’re taking a closer look at what just landed in Chrome 129. So please keep you arms and legs inside the tram at all times – and remember to not take any flash photography if you see Una Kravets or Bramus out in the wild.
Let the tour begin:
A new scheduler.yield()
API lets you break up long tasks into smaller chunks by explicitly yielding back to the main thread. The biggest benefit of this approach, compared to existing options like yieldToMain()
, is continuation – which means that if you yield in the middle of a set of tasks, the other scheduled tasks will continue in the same order after the yield point.
A new CSS property, interpolate-size
opens up a new set of CSS animations with intrinsic sizing keywords, instead of requiring explicit sizes. Yes, this means we can finally animate height: auto
.
Changes to CSS anchor positioning consist of renaming inset-area
to position-area
and a few other syntax/naming changes. This is less fun than the other features, but we wanted to mention it because you’ll need to change your code ASAP if you’re using any of the old terms.
Bottom Line: I used to read about new Chrome features and think, “Looks cool, but wake me up when the other browsers support it.” I still kind of feel that way, but thanks to the Interop Project, we’re getting cross-browser support for new features faster than ever.
When my co-workers call me a hero for setting up our whole db in an hour
Postgres is the world’s most popular open-source database – but it’s also easy to get stuck battling complex configs, maintenance, and scaling issues.
That’s where Neon can help. They offer fully managed Postgres with unique features to help you build and scale faster:
Your DB automatically adapts to your app’s workload, eliminating the need for over-provisioning or manual resource allocation.
You can instantly create ready-to-use Development/Preview/Test databases (with both schema and data) that automatically shut down when unused. (See the docs.)
You can restore your database in seconds to any point in the past 30 days, 24 hours, or even 1 minute ago.
Get started with the robust free tier, and provision your Postgres database in under a second – seriously, it’s that fast.
They created this free Synthetic Monitoring Brief that shows you how to create browser and API tests that are intelligent and self-maintaining, with no code required.
What does this evaluate to?
Array.from({ length: 26 }, (x, i) => (i + 10).toString(36)).join(", ")
We opened up a free preview of react.gg, our interactive course for mastering modern React.
TkDodo wrote about how Component Composition is great btw.
The new Developer Nation survey is a win-win: when you take it, they donate to charity and send you a virtual goodie bag packed with resources. Plus, you get a chance to win a Samsung Galaxy Watch 7, a Portable Projector, a RODE NT-USB Mini Microphone, Raspberry Pi 5s, and lots more. Start now. [sponsored]
Bun now allows you to compile and run C in JavaScript (experimentally). Their scientists were so preoccupied with whether or not they could, they didn’t stop to think if they should.
Tony Alaribe wrote an article on the htmx blog called, You can’t build interactive web apps except as Single Page Applications… and other myths. I’m a little upset he didn’t take time to clear up the myth that I “wet my pants” on the first day of 6th grade, when I clearly just spilled water on them – but I’ll get over it eventually.
Valtio released v2.0 of its proxy-state manager for React and Vanilla JS.
Stytch gives you complete auth infrastructure (not just widgets), plus built-in fraud and risk prevention in a single, API-first platform. So you’ll never have to hack together multiple auth and security tools again 🙏. [sponsored]
Austin Whyte wrote an in-depth post about how his team at Discord reduced WebSocket traffic by 40%.
The Deno 2.0 release candidate just dropped. I haven’t been this excited for a cute, animated dinosaur release since the 11th Land Before Time movie came out.
Cloudflare just announced a new marketplace that will let websites charge AI bots for scraping. I can’t wait until OpenAI sends me a check for $0.78 after training its models to recognize the connection between htmx and my most traumatic middle school memories. Long live late-stage capitalism.
What does this evaluate to?
Array.from({ length: 26 }, (x, i) => (i + 10).toString(36)).join(", ")
The English alphabet as a string –
a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y, z