Google Aurora: A Collab Between Chrome and Web Frameworks
Aurora is a popular name for tech projects, it seems. Following on from Amazon Aurora and Twitter Aurora, Google’s Aurora project is a collaboration between its Chrome browser team and open source web frameworks such as Next.js, Nuxt and Angular. It was announced last June, and at the recent Infobip Shift developer conference we received an update from Google’s Houssein Djirdeh. I spoke to Djirdeh after his presentation to get more details.
In his presentation, Djirdeh outlined four key areas of focus for Chrome when working with web frameworks. Built-in image optimization is one; this work has been going on since at least November 2020, when Vercel’s Guillermo Rauch announced a new “React-based image component” in Next.js that uses web standards. Other areas of focus for Aurora include efficient loading of third-party scripts, better custom font behavior, and an “end-to-end conformance pipeline.” Google uses the term conformance to mean “safeguarding developers from writing code that can negatively affect user experience.”
I asked Djirdeh when Aurora started and what was the impetus? He said it started a few years ago, with the goal of “why don’t we try to work more closely with the framework community and open source community.”
He said they initially considered building their own framework (meaning the Chrome team; while Angular originated in Google, it wasn’t from the browser team). They also considered open sourcing an existing internal Google framework. But ultimately, Djirdeh said, “there are so many open source frameworks that have millions of users,” so they decided to work with them directly.
Focus on React
“We wanted to focus on React; we were such a small team back then, it was like four or five of us,” Djirdeh said. “Then while we were working in the React space, we met the Next.js team. And a lot of the things we wanted to do, we thought that they already did. They were a framework that’s built on top of React, they try to lower bundle size as much as possible, they have server-side rendering, […] they do a lot of things like file-based routing. So if our visions are so aligned, why not work together?”
Google held weekly sprints with the Next.js team, and they worked together on the image optimization announced in November 2020.
I asked whether the Google team has also been working with Facebook’s React team, given that the React library originated there? He replied that yes, they meet with that team weekly or bi-weekly.
“We try to let the React members know what’s happening in the webspace,” Djirdeh said, “like, hey, this is a new API coming out, maybe React’s concurrent rendering can use it. It makes sense. And many times, they’ll give some great feedback.”
He added that often it’ll be the Google Chrome, Facebook React and Next.js teams meeting together.
Framework Complexity Critics
> 3/4 of this makes me want to claw my eyes out.
Hooks are failed tech.
React cultural momentum is not dealing rationally with the problems it creates.
This is not the future. https://t.co/DUWqFFce0F
— Alex Russell (@slightlylate) October 14, 2022
Djirdeh acknowledged that it’s easy for developers to “just fall into the world of the framework and not realize which dependencies are coming in,” which can cause problems. He said he agrees with much of what Russell writes, and that Aurora is trying to help improve the core frameworks.
Finally, I asked if the other major browser vendors, Mozilla and Apple, are involved in Aurora.
“Not as much in the Aurora initiative as we’d like,” he replied. “I’m sure we tried to kick it off. There are some small sub-projects that we are collaborating on with them. But it’s not very framework-specific […] we do also work with a lot of other Chrome teams that happen to liaise with WebKit and Mozilla, so we end up reaching out to them every now and then.”
Disclosure: Infobip paid for Richard MacManus to attend the Infobip Shift Conference in Croatia.