After launching Project IDX for a public preview six months ago, Google is announcing major updates to the platform, including iOS and Android emulators, additional templates for popular frameworks, and a wider range of compatible tools.
During the public preview period for Project IDX, Google has been gathering user feedback that led to the company making these updates. The largest one is an iOS simulator and Android emulator in the browser, allowing developers to preview their applications in a mobile view without leaving their workspace. (A simulator imitates the software without mimicking the hardware. An emulator takes that a step further by emulating software and hardware configurations.)
“I use IDX with the Malloy project. I often have several different data projects going simultaneously,” one Google software engineer shared about Project IDX. “IDX lets me quickly spin up an instance to solve a problem, and it is trivial to configure.”
Whether developers are building a Flutter or a web app, Project IDX loads the correct preview environment for the application, which can be Safari mobile, Chrome, Android, or iOS. Consolidating a multi-platform process into one easy-to-navigate place makes developing, testing, and debugging applications easier, Google said
The iOS simulator has an experimental feature that lets developers spot-check their app’s layout and behavior while they work, Google explained.
In addition to the iOS simulator and Android emulator, one of developers’ most popular feature requests was expanded support for more project templates, Google said.
As a result, Google added new templates for Astro, Go, Python/Flask, Qwik, Lit, Preact, Solifd.js, and Node.js. Developers can still import their repositories from GitHub and their local files, or choose their setup with a custom Nix environment, which has improved in this latest round of updates.
Project IDX uses Nix, a cross-platform package manager, to configure templates and previews. Now, developers can customize IDX starter templates by leveraging Nix extensibility, using Nix file editing to reduce errors and write code more efficiently, quickly recovering from broken configurations, and avoiding unnecessary rebuild attempts thanks to improvements to the environment customization workflow.
Other improvements made to IDX include the ability to auto-detect network ports and adjust firewall settings without additional configuration, enable Docker in the dev.nix file to work easily with Docker containers and images, and run command-line tools, scripts, and utilities within the developer’s workspace without installing them locally.