Hi friends đź‘‹ Welcome back to Frontend at Scale, your newsletter for all things software design, architecture, and unplanned four-week breaks that end on a random Monday without any further explanation. I hope you've been keeping well.
One of the things I did during my impromptu break was attending Google I/O last week, which is what today's newsletter is all about. Did you know there were several non-AI announcements at the event? I know, unreal. I share some of my favorite ones with you below.
Happy Memorial Day to everyone in the US, and happy quiet day at work without your American coworkers to everyone else. I hope you all have a fantastic week ahead.
Let's dive in.
MAXI'S RAMBLINGS
Maxi's Google I/O 2025 Recap
Last week I attended I/O 2025, Google’s annual event for developers, which is always full of announcements on diverse topics such as AI, Gemini, AI, LLMs, AI Models, Gemini again, AI, Artificial Intelligence, and AI.
It was the best conference I’ve been to—great talks, great vibes, great people, and lots of cool tech to try out.
You probably saw some of the things they announced at the event, like Flow and Veo 3, which can generate longer, hyper-realistic video with audio; Google Beam, which I got to try out at the event and it’s really super impressive; and the upcoming Android XR Glasses, which I did not get to try out because the line at the booth was just way too long.
But there were also lots of web-related announcements that are perhaps more relevant to us web devs and might have flown under the radar with all the shiny new AI things. So, in case you missed them, I wanted to take some time to share some of my favorites with you here.
Web UI
Google continues to push the web platform forward with new HTML + CSS features. This year, some of the most notable additions are:
- Stylable Select Elements — Definitely one of the most long-awaited features of the web platform ever! Creating custom JavaScript-based dropdowns to give our select elements nicer styles will soon be a thing of the past.
- Carousels — Another common feature that typically requires lots of JavaScript and edge-case handling. Now we have native HTML + CSS carousels that are super powerful and customizable.
- Popovers — For use cases like Hover Cards, Tooltips, and yes, Popovers. These are powered by the new Popover, Anchor, and Interest Invoker APIs.
- And a bunch of improvements to older but still pretty new APIs, like View transitions, Scroll-driven animations, typed attributes, and more.
Google also continues to invest in Baseline to give us up-to-date browser compatibility information (which is now surfaced by ESLint on IDEs like VSCode) and Interop, an effort to bring all of these features to all browsers.
For much more on this, check out Una’s What’s new in web UI talk.
DevTools and Web AI
- Ask AI — New AI Assistance features are bringing Gemini to the browser. You can right-click any DOM element in the Elements tab and click “Ask AI” to ask Gemini a question like, “How do I center this button?” or “Why do I have a horizontal scrollbar here?” or “Why is my UI so ugly if I asked Cursor to please make it look nice?”. It also has the ability to apply the suggested changes directly to your codebase if you have it connected to DevTools, which is really convenient. Addy Osmani recorded a demo of how these features work here.
- Redesigned Performance Panel — The Performance panel is getting a new, cleaner UI to make it more accessible and, hopefully, a bit less intimidating. There’s a new Insights tab that gives you a summary of the page's performance, as well as tips and tricks to speed things up. Here's a 10-minute overview of these changes.
- Web AI APIs — Chrome now ships with a bunch of built-in AI APIs that let you prompt Gemini Nano directly in the browser. These APIs work offline and are a great fit from a privacy standpoint because your data never leaves the browser. They have limited availability, however, so you’d still need to fall back to an online LLM in most cases (unless you're building a Chrome extension.) This talk by Thomas Steiner has a good overview of these new APIs.
Agents
There were two big AI Agent announcements this year, on top of the recently unveiled AlphaEvolve agent a couple of weeks ago:
- ​Jules — A coding agent like Codex or Devin. The idea is that you assign a high-level task to it, like “Upgrade this app to React 19,” and you let it work in the background while you do something else. This is in contrast to tools like Cursor and Windsurf, which are designed for more granular updates. Jules is still in early development, but it looks very promising.
- ​Project Mariner — A general-purpose agent that is still in “research prototype” phase but looks super powerful. It has its own browser, and it can connect (with your permission) to your Google Drive and other services, so it can perform high-level tasks like “Find me a cheap flight + hotel to somewhere warm in the summer,” and it’ll do all the research and set up notifications for you.
For a deeper look at these features and more, the full Developer Keynote (or the 4-minute version) are a great place to start.
​
And that’s a wrap for this year’s I/O! Tune in next year for more web platform features, the latest DevTools improvements, and at least 73 new ways to bring Gemini into your everyday life.
​FRONTEND.FM​
Approachable Web Accessibility with Alyssa Holland
This week I sat down with Alyssa Holland, a frontend developer and accessibility advocate, for an insightful conversation about building a more inclusive web.
We talked about:
- Why accessibility doesn’t have to be intimidating—and how to make it feel approachable,
- The power of headless component libraries in building accessible UI,
- Getting team buy-in for a11y, testing tools like Axe DevTools, and why “no ARIA is better than bad ARIA,”
And a lot more.
You can listen to the full episode on YouTube, Spotify, and Apple Podcasts. Don't forget to subscribe to the podcast on your favorite platform to be the first to know when a new episode comes out.
​
Add to your queue |
ARCHITECTURE SNACKS
Links Worth Checking Out
- I haven't been keeping up with the world of Svelte lately, which is a shame because it's one of my favorite UI frameworks (that I never get to use, sadly). The talks from the latest Svelte Summit are on YouTube now, so I took the opportunity to catch up with Rich's talk on What Svelte Promises and the reveal of its new async API.
- Jay from the SST team wrote about why modern Frontends are hard to deploy and why the big cloud providers like AWS don't have the best support for them.
- You know I love a good contrarian argument, and this one from Hillel Wayne on writing the most clever code you possibly can (as a learning mechanism, not necessarily to commit it), I thought was pretty good advice.
- If you're in the mood for a trip down memory lane, the Deno team wrote a brief history of JavaScript in honor of the language's 30th anniversary. Welcome to your 30s, JS. Enjoy that full set of hair and those knees that don't hurt all the time because they're not going to last long.
- Jordan Cutler wrote a short but powerful prompting guide for talking with IDE agents like Cursor and Windsurf. "Ask it to ask you questions one at a time," popularized by a Harper Reed article we shared a couple of months ago, is one of my favorite techniques.
- If you're curious about OpenAI's Codex but don't have an extra $200 per month to spare, Zack Proser wrote a hands-on review with the good, the bad, and the ugly of his experience using this agent.
- Sean Goedecke shared some thoughts in defense of shallow technical knowledge, and I couldn't agree more with him. You only need deep technical knowledge in a few areas—for everything else, going broad and learning just enough to be dangerous is almost always a better strategy.
- ​Can AI Replace Software Architects? Well, I certainly hope not, but I gave this article a read just in case. Interesting experiment on how good four different LLMs are at designing and evaluating architectures.
- A short and sweet one to end today's newsletter: YAGRI (You Are Gonna Read It), a helpful piece of advice to keep in mind when working with data modeling.
That’s all for today, friends! Thank you for making it all the way to the end. If you enjoyed the newsletter, it would mean the world to me if you’d share it with your friends and coworkers. (And if you didn't enjoy it, why not share it with an enemy?)
Did someone forward this to you? First of all, tell them how awesome they are, and then consider subscribing to the newsletter to get the next issue right in your inbox.
I read and reply to all of your comments. Feel free to reach out on Twitter, LinkedIn, or reply to this email directly with any feedback or questions.
Have a great week đź‘‹
– Maxi