First Impressions Of Google Antigravity

Well, as predicted, I had a go at using Google Antigravity.

I downloaded last Wednesday to try out the editor and agent. I didn’t have a good idea for it so I simply asked it to produce an additional tool for my suite of online tools: one for dealing with timestamps and timezone conversions. I had plans for this one for a while, although they were relatively vague, it seemed like a good test of Gemini as a coding agent.

I started with a bit of vibe-coding to see how much it could produce on it’s own. Here the prompt I used:

Note the tools located in “site”. I would like another one made that will process timestamps.

The tool will consist of two text boxes side-by-side. The text box to the left will be user input: the user will use this to enter timestamps of various types, with one timestamp per line. On the right will be the output. It is not designed to be editable, but the user should be able to scroll, copy, and otherwise get the text from this pane.

Above the two should be a select picker of operations. Beside that are two radio buttons: “UTC” and “Local”. This is for selecting the given timezone, where Local is the browser’s local timezone.

The way this works is that the user will enter a line of input in the text area in the left. When changed, as long as the line of input is valid, the tool will apply the operation and display the result on the same line as the input in the text area on the right. The operation to apply will depend on the picker. Blank lines and any line beginning with “#” are valid and are to be copied as is. Timestamps are to be displayed in ISO 8601 within the selected timezone.

The picker should have the following options, which do the following operations:

  • “Convert from Unix”: converts the input in seconds from the Unix epoch into a timestamp on the right.
  • “Convert from Unix Micro”: converts the input in milliseconds from the Unix epoch into a timestamp on the right.
  • “To UTC”: converts the input in ISO 8601 in the selected timezone into UTC, regardless of what timezone is chosen. “From UTC”: converts the input in ISO 8601, which is assumed to be in UTC, into the selected timezone.

This should be implemented as a static HTML page with vanilla JavaScript.

The agent did crash a few times: probably launch day, go-live teething problems. At one point it stopped halfway, and I had to ask it to “continue with the implementation plan.”

In the end it did manage to produce a decent-looking HTML UI, plus a working JavaScript implementation of what I described. The quality of the generated code was… fine. The JavaScript worked, but it wasn’t as neat as something produced by Claude Code, and definitely not as neat as something I would’ve written myself (the HTML was fine).

Auto-generated description: A timestamp converter interface displays UNIX time conversions for specified dates and the current time.

I had ideas of going further, so I asked the agent to port the JavaScript to Go and to produce a WSDL target, like many of the other tools. The agent had no issues doing so.

Please port the main logic defined in “main.js” to Go targetting WASM, in a new directory located in “cmds”. You can use the other WASM files found in “cmds” as a guide.

In it’s place, please change “site/timestamps/main.js” to be a WASM launcher, much like ther other launchers defined in “site/clocks” and “site/templates”. Add the new Go target to the Makefile

I then “started driving” by extending the Go code by adding a parser for a potential mini-language. And from this I got to experience Antigravity as a code editor. And it’s essentially VS Code, which honestly is not my favourite IDE. In fact, with all the LLM-powered code completion, it’s a little closer to Cursor, which I only tried once before. I was turned off by Cursor due to all the suggestions getting in the way, and Antigravity is a bit like that too. I kind of wish there’s more prioritising of suggestions: those that fix an compile error, or can be inferred by a refactor should have more weight than those that lack the context to be more than just mere guesses. The latter is rarely what I want, and I usually have to leave the home row to reach for the Escape, or I’ve accidentally pressed tab and have to back-out of the unwanted insert. Maybe that’s something that I can adjust: I haven’t looked, but I would prefer it if it just did nothing if it couldn’t be sure of what I want.

I also tried the testing agent, where it spun up Chrome and drove it to test the UI. The agent did have some issues launching the service — probably because I had the dev server already running — but it did successfully test the UI out. The tests were unsuccessful, and I had to go in and debug it, but hey, that’s something, I guess.

So, would I use Antigravity again? I mean, it’s a decent IDE (or maybe it’s better to say that it’s built on a decent IDE), and I think the agents work quite well. But I probably wouldn’t use it again, mainly because it’s now how I like to interact with agents. I’ve grown accustom to how Claude Code works, where the agent takes instruction from you on your terms. Otherwise it stays out of the way. And to be fair, that’s sort of how the agent in Antigravity works too. If they just toned down the suggestions in the editor itself, it may be something for me in the future. We’ll see.