<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Google-Stitch on Guillaume Laforge</title><link>https://glaforge.dev/tags/google-stitch/</link><description>Recent content in Google-Stitch on Guillaume Laforge</description><generator>Hugo -- gohugo.io</generator><language>en-us</language><copyright>This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.</copyright><lastBuildDate>Sun, 31 May 2026 17:40:33 +0200</lastBuildDate><atom:link href="https://glaforge.dev/tags/google-stitch/index.xml" rel="self" type="application/rss+xml"/><item><title>Iterating on Frontend Design with Stitch and Antigravity CLI</title><link>https://glaforge.dev/posts/2026/05/31/iterating-on-frontend-design-with-stitch-and-antigravity-cli/</link><pubDate>Sun, 31 May 2026 17:40:33 +0200</pubDate><guid>https://glaforge.dev/posts/2026/05/31/iterating-on-frontend-design-with-stitch-and-antigravity-cli/</guid><description>&lt;p&gt;My friend Leonard and I were collaborating over the weekend on some new updates for the &lt;a href="https://groovyconsole.dev/"&gt;Groovy Web Console&lt;/a&gt;.
This console is an online playground where &lt;a href="http://groovy-lang.org/"&gt;Apache Groovy&lt;/a&gt; users can run Groovy scripts online,
with different versions of the language, from Groovy 3 up to the experimental Groovy 6.
Additionally, there&amp;rsquo;s a specific integration with the &lt;a href="https://spockframework.org/"&gt;Spock testing framework&lt;/a&gt;,
which allows users to run tests written with the framework.&lt;/p&gt;
&lt;p&gt;Here&amp;rsquo;s what the old console (well, the current one at the time of this writing) looks like:&lt;/p&gt;</description><content:encoded>
<![CDATA[<p>My friend Leonard and I were collaborating over the weekend on some new updates for the <a href="https://groovyconsole.dev/">Groovy Web Console</a>.
This console is an online playground where <a href="http://groovy-lang.org/">Apache Groovy</a> users can run Groovy scripts online,
with different versions of the language, from Groovy 3 up to the experimental Groovy 6.
Additionally, there&rsquo;s a specific integration with the <a href="https://spockframework.org/">Spock testing framework</a>,
which allows users to run tests written with the framework.</p>
<p>Here&rsquo;s what the old console (well, the current one at the time of this writing) looks like:</p>
<p><figure>
  <a href="#img-248716e9ef914e19fdafaf10f2cd8476">
    <img src="/img/gwc/gwc-old.jpg"
      alt=""
       />
  </a>
  <figcaption></figcaption>
</figure>
<div class="lightbox" id="img-248716e9ef914e19fdafaf10f2cd8476">
  <a href="#_" class="lightbox-overlay"></a>
  <img src="/img/gwc/gwc-old.jpg"
    alt=""
     />
  <div class="lightbox-caption"></div>
</div>
</p>
<p>This is actually the second version of the online Groovy Web Console.
This version uses the <a href="https://bulma.io/">Bulma</a> CSS framework.
But I&rsquo;m sure you&rsquo;ll agree I&rsquo;m not a frontend designer, and indeed, I&rsquo;m more of a backend designer than anything!</p>
<p>Leonard was focusing on an upcoming GitHub integration, so users can save and publish scripts via GitHub.
And while discussing this integration, I mentioned that it might be nice to overhaul the UI:</p>
<p><figure>
  <a href="#img-cd21cb5cbbe499d4e84f1b49f24595fe">
    <img src="/img/gwc/slack-discussion.jpg"
      alt=""
       />
  </a>
  <figcaption></figcaption>
</figure>
<div class="lightbox" id="img-cd21cb5cbbe499d4e84f1b49f24595fe">
  <a href="#_" class="lightbox-overlay"></a>
  <img src="/img/gwc/slack-discussion.jpg"
    alt=""
     />
  <div class="lightbox-caption"></div>
</div>
</p>
<p>Alright, let&rsquo;s take on that challenge.
But since I&rsquo;m not a frontend developer, I&rsquo;m going to use AI to help me reach a result I would have never reached without help.</p>
<p>I used <a href="https://stitch.withgoogle.com/">Stitch</a> to iterate over a new design.
Google Stitch is an AI-powered UI/UX design tool developed by Google Labs.
It acts as an AI-native software design canvas, letting you generate high-fidelity,
interactive user interfaces and frontend code from natural language prompts, sketches, or existing images.</p>
<p>I gave Stitch a screenshot of the original design of the Groovy Web Console.
But I wanted something that looks more like the interface of a code editor like Visual Studio Code.
And I made sure all the usual functionality of the Groovy Web Console would still be surfaced.
After several iterations, and a few tweaks here and there, I came up with something that looked like this:</p>
<p><figure>
  <a href="#img-e146638f1c9da4b8960eeabb500e2289">
    <img src="/img/gwc/stitch-0-design.jpg"
      alt=""
       />
  </a>
  <figcaption></figcaption>
</figure>
<div class="lightbox" id="img-e146638f1c9da4b8960eeabb500e2289">
  <a href="#_" class="lightbox-overlay"></a>
  <img src="/img/gwc/stitch-0-design.jpg"
    alt=""
     />
  <div class="lightbox-caption"></div>
</div>
</p>
<p>Stitch generated some <a href="https://designmd.ai/">DESIGN.md</a> design systems that are represented by the typography, color, button styles on the left.
And on the right, you can see the VSCode-like interface I wanted to achieve.</p>

            <link rel="stylesheet" href="/css/vendors/admonitions.d762bab02d2df6f4f18be003fbd11e6175139be403be419f4010274d315eeec0.css" integrity="sha256-12K6sC0t9vTxi&#43;AD&#43;9EeYXUTm&#43;QDvkGfQBAnTTFe7sA=" crossorigin="anonymous">
    <div class="admonition note">
      <div class="admonition-header"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512"><path d="M0 64C0 28.7 28.7 0 64 0L224 0l0 128c0 17.7 14.3 32 32 32l128 0 0 125.7-86.8 86.8c-10.3 10.3-17.5 23.1-21 37.2l-18.7 74.9c-2.3 9.2-1.8 18.8 1.3 27.5L64 512c-35.3 0-64-28.7-64-64L0 64zm384 64l-128 0L256 0 384 128zM549.8 235.7l14.4 14.4c15.6 15.6 15.6 40.9 0 56.6l-29.4 29.4-71-71 29.4-29.4c15.6-15.6 40.9-15.6 56.6 0zM311.9 417L441.1 287.8l71 71L382.9 487.9c-4.1 4.1-9.2 7-14.9 8.4l-60.1 15c-5.5 1.4-11.2-.2-15.2-4.2s-5.6-9.7-4.2-15.2l15-60.1c1.4-5.6 4.3-10.8 8.4-14.9z"/></svg>
        <span>Remark</span>
      </div>
      <div class="admonition-content">
        <p><code>DESIGN.md</code> is Google&rsquo;s new <a href="https://designmd.ai/">open format</a>: a single markdown file your AI coding tool reads to build consistent UI.</p>
      </div>
    </div><p>Once I was happy with the design of the UI, I exported the whole project as a zip file (but you can export to Figma, AI Studio, via MCP, and more):</p>
<p><figure>
  <a href="#img-dc6f806548ac0cd10ef687216639193e">
    <img src="/img/gwc/stitch-1-export.jpg"
      alt=""
       />
  </a>
  <figcaption></figcaption>
</figure>
<div class="lightbox" id="img-dc6f806548ac0cd10ef687216639193e">
  <a href="#_" class="lightbox-overlay"></a>
  <img src="/img/gwc/stitch-1-export.jpg"
    alt=""
     />
  <div class="lightbox-caption"></div>
</div>
</p>
<p>I uncompressed the zip archive in my project, and that&rsquo;s when I launched <a href="https://antigravity.google/product/antigravity-cli">Antigravity CLI</a> to help me integrate the design.
As the project description states: Antigravity CLI is <em>&ldquo;The terminal-first surface to interact with Antigravity agents. Stay in your flow without context switching.&rdquo;</em></p>
<p>I told Antigravity CLI that we were going to work on the Groovy Web Console, and that I wanted to integrate the design from Stitch as the new UI for the project.
I went through various steps to finetune the integration, to further tweak the design and behavior of the UI.
Antigravity also helped me with updating the Cypress tests, and merging with upstream Git branches.
It was a very helpful partner in crime, as if I was working with a productive and knowledgeable co-worker.</p>
<p>So far, the Groovy Web Console looks like this:</p>
<p><figure>
  <a href="#img-b825192ff83bdb9af8eab82cb7f90405">
    <img src="/img/gwc/gwc-light.jpg"
      alt=""
       />
  </a>
  <figcaption></figcaption>
</figure>
<div class="lightbox" id="img-b825192ff83bdb9af8eab82cb7f90405">
  <a href="#_" class="lightbox-overlay"></a>
  <img src="/img/gwc/gwc-light.jpg"
    alt=""
     />
  <div class="lightbox-caption"></div>
</div>
</p>
<p>And with a dark theme, like this:</p>
<p><figure>
  <a href="#img-a595952d7bb9882916a9fbd0b6b78451">
    <img src="/img/gwc/gwc-dark.jpg"
      alt=""
       />
  </a>
  <figcaption></figcaption>
</figure>
<div class="lightbox" id="img-a595952d7bb9882916a9fbd0b6b78451">
  <a href="#_" class="lightbox-overlay"></a>
  <img src="/img/gwc/gwc-dark.jpg"
    alt=""
     />
  <div class="lightbox-caption"></div>
</div>
</p>
<p>It&rsquo;s not the final design, and there are still a few things to tweak or integrate,
but we&rsquo;re almost there, and I&rsquo;m happy with my productive session with both Stitch and Antigravity CLI!</p>
<p><figure>
  <a href="#img-6614a6d43a283edca99b0c1173b5d977">
    <img src="/img/gwc/agy-1-welcome.jpg"
      alt=""
       />
  </a>
  <figcaption></figcaption>
</figure>
<div class="lightbox" id="img-6614a6d43a283edca99b0c1173b5d977">
  <a href="#_" class="lightbox-overlay"></a>
  <img src="/img/gwc/agy-1-welcome.jpg"
    alt=""
     />
  <div class="lightbox-caption"></div>
</div>
</p>
<p>Working with Antigravity CLI was pretty straightforward.
Before working on the new design, I let it guide me through some DNS and OAuth problems, as we wanted to add the ability to sign up with GitHub accounts
in order to allow users to save their Groovy scripts as private or public Gists.
The callback was a Cloud Function, but it was an old v1 flavor instead of the new v2 flavor.
Antigravity was able to connect to my Google Cloud project, inspect the available resources, make the necessary configuration changes, and handle cloud function re-deployments.</p>
<p><figure>
  <a href="#img-45550894592e366cf644b058dcbc3ee7">
    <img src="/img/gwc/agy-2-gcf2.jpg"
      alt=""
       />
  </a>
  <figcaption></figcaption>
</figure>
<div class="lightbox" id="img-45550894592e366cf644b058dcbc3ee7">
  <a href="#_" class="lightbox-overlay"></a>
  <img src="/img/gwc/agy-2-gcf2.jpg"
    alt=""
     />
  <div class="lightbox-caption"></div>
</div>
</p>
<p>I had to configure the DNS records of my domain name provider, and it checked the status of my records:</p>
<p><figure>
  <a href="#img-2dc63743a5f759b7667d3b22abf9ae5a">
    <img src="/img/gwc/agy-3-dns.jpg"
      alt=""
       />
  </a>
  <figcaption></figcaption>
</figure>
<div class="lightbox" id="img-2dc63743a5f759b7667d3b22abf9ae5a">
  <a href="#_" class="lightbox-overlay"></a>
  <img src="/img/gwc/agy-3-dns.jpg"
    alt=""
     />
  <div class="lightbox-caption"></div>
</div>
</p>
<p>Antigravity is also a great companion to remind me how to run this damn project! &#x1f603;</p>
<p><figure>
  <a href="#img-e4d285a3916b47b66d371d3d2f999214">
    <img src="/img/gwc/agy-3-companion.jpg"
      alt=""
       />
  </a>
  <figcaption></figcaption>
</figure>
<div class="lightbox" id="img-e4d285a3916b47b66d371d3d2f999214">
  <a href="#_" class="lightbox-overlay"></a>
  <img src="/img/gwc/agy-3-companion.jpg"
    alt=""
     />
  <div class="lightbox-caption"></div>
</div>
</p>
<p>Then we went on a ride to work on the redesign, starting from the exported zip archive of the new look that I had prepared in Google Stitch:</p>
<p><figure>
  <a href="#img-483d41974d85c2e24b96187e0c60ff71">
    <img src="/img/gwc/agy-4-design.jpg"
      alt=""
       />
  </a>
  <figcaption></figcaption>
</figure>
<div class="lightbox" id="img-483d41974d85c2e24b96187e0c60ff71">
  <a href="#_" class="lightbox-overlay"></a>
  <img src="/img/gwc/agy-4-design.jpg"
    alt=""
     />
  <div class="lightbox-caption"></div>
</div>
</p>
<p>And if you want to better understand the architecture of your project, Antigravity can generate a Mermaid diagram after having analyzed the resources in the Google Cloud project:</p>
<p><figure>
  <a href="#img-684706778bff19520ef8a09d1bd64ea0">
    <img src="/img/gwc/project-architecture.svg"
      alt=""
       />
  </a>
  <figcaption></figcaption>
</figure>
<div class="lightbox" id="img-684706778bff19520ef8a09d1bd64ea0">
  <a href="#_" class="lightbox-overlay"></a>
  <img src="/img/gwc/project-architecture.svg"
    alt=""
     />
  <div class="lightbox-caption"></div>
</div>
</p>
<h2 id="summary">Summary</h2>
<p>Using the combination of Google <a href="https://stitch.withgoogle.com/">Stitch</a> and
<a href="https://antigravity.google/product/antigravity-cli">Antigravity CLI</a> proved to be a productive workflow.
As someone who is definitely not a frontend engineer, this duo was exactly what I needed.
Stitch allowed me to easily design and iterate on a beautiful, modern UI from just an initial screenshot and prompt,
while Antigravity CLI helped me integrate that design and tie all the complex pieces (from tests to cloud infrastructure) together nicely.</p>
<p>If you want to learn more about Antigravity CLI in particular, don&rsquo;t hesitate to read my colleagues&rsquo; articles:</p>
<ul>
<li>Romin&rsquo;s <a href="https://medium.com/google-cloud/antigravity-cli-tutorial-series-12b46cfe3bf2">Antigravity CLI tutorial series</a> for all the details about the CLI,</li>
<li>and Daniela&rsquo;s <a href="https://medium.com/google-cloud/the-hitchhikers-guide-to-antigravity-2-0-af17eb4845c0">The Hitchhiker’s Guide to Antigravity 2.0</a> for a general understanding of all the Antigravity components.</li>
</ul>
<img src="https://pixstat-adh43sr7ba-ew.a.run.app/transparent.gif" width="1" height="1" />]]></content:encoded></item></channel></rss>