Google’s new developer environment, Google IDX, is now in public beta, and several promised features are available for beta testing. I switched from Visual Studio Code to Google IDX to see if it is any different and better. After using IDX for three months, let me tell you how Google IDX compares to VS Code, what it does better, and where it falls short.
Table of Contents
Google’s Project IDX and VS Code
Project IDX is a web-based integrated development environment (IDE) that allows running and debugging applications in the cloud. In comparison, many web-based code editors like VS Code’s own vscode.dev typically runs code locally. They lack access to essential features like a terminal because they are web-based.
In contrast, Google IDX operates entirely in the cloud on a virtual Linux environment while SSH-ing the output. In simple terms, it runs your code on a Linux machine in the cloud and displays the results in your browser, offering all the features of a full IDE, including a fully functional terminal.
The primary advantage of this setup is the ability to test resource-intensive code, such as powerful AI models, or even run mobile emulators even if your local system lacks the required hardware. Since it is cloud-based, you can access your projects from any device, anywhere, using your Google account. You can also share projects with teammates, allowing them to access the code instantly without installing extensions.
However, cloud-based IDEs have their own drawbacks. For instance, you cannot work on your project offline. Additionally, hosting private projects in the cloud may be unsuitable for those working on confidential projects. Let’s have a deeper look at their day-to-day feature list.
Getting Started
Google IDX is built on Microsoft’s Code-OSS which is also what VS Code is built on. As a result, it looks similar to VS Code, with a left sidebar for files, multiple tabs, settings, and other UI elements. It also supports all VS Code extensions and themes, making it easy for people transitioning from VS Code. There is little to no learning curve. To get started, simply visit idx.google.com. You can also install the website as a Chrome app; however, keep in mind that even this installed app will require an active internet connection to work.
Project/WorkSpace and Packages
To start a project or workspace, you have several built-in options for boilerplate templates, ranging from plain HTML, Angular, React, Go, and Python Django to Flutter, MySQL, Gemini API, and more. Alternatively, you can start with a blank workspace and use extensions to set up your project. There is also an option to import projects directly from GitHub using Git repo.
You must give your project a name before starting a workspace. It can take up to 5-10 minutes to initialize, as it has to create a Linux virtual machine (VM) for you in the cloud. Depending on the chosen template, the necessary software will be automatically installed — for example, Node JS for an Angular project. This saves a lot of time when you want to set up an environment like Flutter which has many dependencies.
This software is installed individually for each project and not for your entire account. Useful because it allows you to run different projects with competing technologies or different runtime versions simultaneously in separate VMs, without needing to switch software like on a local machine.
The created workspace can be customized, with Google relying on the cross-platform package manager Nix for this purpose. Within the workspace, you can find all the packages for a specific project under idx > dev.nix
. In addition to the pre-installed software, you can use the terminal to install, uninstall, or change the software version.
You must use Linux commands in the IDX terminal as it operates in a Linux environment. Another advantage is that software like Bun works whether you are using Windows, which does not support such software by default.
Being cloud-based also simplifies collaboration, ensuring that everyone working on the project uses the same runtime environment, dependencies, and extensions for IDX. This consistency helps reduce confusion and minimizes random errors.
Previews
A key feature of IDX is the availability of previews, which is particularly useful for web and mobile development. Simply create a project to start viewing the project preview by default. Any changes made to the code are instantly reflected in the preview, thanks to the hot-reload feature – no extensions needed. The preview output will be sent to you since the code is running on a virtual machine (VM) in the cloud. This also means you can share the preview with your teammates or clients at any time, even before hosting, just like a regular website.
What makes Google IDX better is that it offers both web and mobile previews. Typically, iPhone simulation requires a Mac, but Google IDX aims to provide both Android and iOS emulators, regardless of your operating system. Currently, the Android emulator is accessible, but the iPhone emulator is unavailable at the time of writing this article.
Once that feature is released, Google IDX will offer functionality that no other code editor provides, potentially revolutionizing development for many iOS app developers. While VS Code offers extensions for Android and iOS emulators (only on Mac), they are often resource-intensive and lack useful features like hot reload.
Gemini AI vs Co-Pilot
Both VS Code and Google IDX carry AI capabilities. Gemini AI is free on IDX right now since it is a Google product. But that is not the case with Copilot on VS Code. Both platforms support chat functionality and in-line code completion. I noticed that Gemini is usually a little faster than Copilot.
However, Gemini sometimes struggles to understand the project context, even when everything is properly configured. It functions like a Gemini chatbox integrated into the code editor but doesn’t collect project and file data as effectively as Copilot, which would otherwise enhance its performance. It’s important to note that IDX is still in beta, so this is based on the current experience.
In day-to-day usage, either AI service should be sufficient. Both can occasionally provide incorrect information or non-functional code, but they generally help speed up your workflow by generating code templates and fixing simple errors.
Hosting
Google IDX offers built-in options like Firebase and Google Cloud Run to streamline hosting when your project is complete and ready to deploy. However, you can still choose manual hosting with a service of your choice by using CLI-based tools, SDKs, or uploading your project to GitHub and connecting the hosting service to it. You also have the option to download all the code files from IDX and upload them to any hosting provider manually.
In simple terms, Google IDX can host websites and apps like VS Code but integrates with other Google services like Firebase and Google Cloud to simplify the process.
Google IDX vs VS Code – Summary
Overall, Google IDX seems a better solution and offers improved security since it runs in a virtual environment. Operating in the cloud also brings various advantages, such as easier collaboration, real-time previews, and the ability to run resource-intensive code through any device.
However, it may not be suitable for private projects or if your entire team is on VS Code. The biggest drawback with IDX is that it sometimes fails to create a project due to VM issues or may require restarting the VM, which can push you out of the environment. Fortunately, it saves your code so you won’t lose your work.
Definitely try Google IDX if you’re open to trying a new IDE and are okay with a cloud-based option. It’s currently free with a limit of 5 free projects where users can reach out to the IDX team to increase the account limit. While there are rumors about a paid plan in the future, there has been no official confirmation from Google yet.