Project IDX: Google’s New Web and Mobile App Development IDE
Project IDX is an “experimental” Google product for developers, currently in public preview (but there is a waitlist to get into it). The product is somewhat ambiguously described as an “integrated developer experience that features AI features/assistance.” So is it a Cloud IDE? Is it a copilot? Is it something else entirely? To find out, I spoke with product lead Kirupa Chinnathambi.
When Project IDX was announced in August, the team (including Chinnathambi) said that the product is browser-based and “designed to make it easier to build, manage and deploy full-stack web and multiplatform applications, with popular frameworks and languages.”
That’s a wide-ranging product description, so in an attempt to narrow it down I asked Chinnathambi if Project IDX is a cloud CDE, similar perhaps to GitHub Codespaces?
“It is in the cloud and runs in the browser, but our ambitions are in many ways to solve the biggest problems builders have in building apps, which often comes down to building a mobile app,” he replied. For example, he said that IDX helps devs test an app across various mobile devices.
The phrase “full-stack multiplatform” is used regularly in the IDX website and promotional material, and Chinnathambi confirmed that this signifies “app developers building mobile apps and web apps.”
Okay, so Project IDX is for developers who want to build an app that runs on both the web and on various mobile operating systems. It does have similarities to GitHub Codespaces, in that both products integrate with Code OSS, Microsoft’s open source Visual Studio Code product. But Chinnathambi says that IDX is “more opinionated.” He noted that it is able to do Android emulation and iOS simulation, as one example.
Project IDX in Action
When you first log into Project IDX, you see a workspace that prompts you to create a web app, a Flutter app, or several other options. Google says a workspace in IDX “contains your code, a code editor (with plugins relevant to your project), and toolchains that support app development.”
I chose a web app template to get started — from there you’re given the choice of creating your own code or using a familiar framework like React or Angular.
The first “experiment” feature I noticed was the ability to enable Nix, a cross-platform package manager. In its documentation, Google says that “IDX uses Nix to define the environment configuration for each workspace.”
Since I’m not personally familiar with Nix, I decided to uncheck that. I then proceeded to the next step of creating my workspace… which led to an error. I tried a couple more times, only to discover that my workspace had in fact been created (twice). So I went back to the homepage, deleted the second workspace, and opened up the first one. Finally, it began the set-up:
The resulting workspace showed a simple web application, which I could of course do anything with from there.
The AI functionality is rather hidden away — it’s a tiny icon in the bottom right of the screen. When I clicked it, this is what displayed:
Unfortunately, I can’t tell you how good IDX AI is, since I got the following message: “IDX AI is not enabled for your region.” (I’m based in the UK)
What’s In It for React Developers?
Project IDX product lead Kirupa Chinnathambi told me that so far IDX is being used mostly by Flutter and web developers. He says they’ve had feedback from Python and Go developers that the product needs to do more for them, so the IDX team has taken that on board.
I can understand why a Flutter developer might want to use IDX since it is a cross-platform development kit built by Google. So it makes sense to also use a Google IDE. But I asked Chinnathambi why a React developer might choose IDX, given that React devs have any number of IDEs to choose from.
He cited ease of use and IDX’s testing features as the main reasons why React devs should use IDX.
“React developers are a big audience for us,” he said. “The number one thing they’ve all said they absolutely love is the ability to have cloud emulators, to be able to test your app across all these various mobile form factors.”
It became clear during the interview that, other than mobile testing, a lot of the other functionality in IDX is either under development or is being called “experimental” by Google. So I asked what specifically makes Project IDX an innovative solution for developers?
He mentioned AI as one of the other experimental features, but more fundamentally there seems to be a desire to integrate closely with the already extensive web and mobile development ecosystem that Google has — everything from a mobile OS (Android), to the Chrome web browser, to Google app development tools like Flutter and Firebase.
“One of the things we really want to focus on is friction-free onboarding,” Chinnathambi said. “You know, can we make it very easy for you to go from ‘I have an idea’ or ‘I have a project’, [to] I want to be up and running in a cloud-based environment very quickly, without having to jump through many hoops with an iPad or a Chromebook or your very powerful machine. And so one of the things we’re actively working on is logging into a Google account […] in a modern browser, and how quickly can we shorten the time from […] typing the URL to having your app up and running, that you can start developing on.”