Building The Wall - Vibecoding a guestbook in an hour
Over the holidays, I kept seeing "Claude on the go" and "Vibecode from your phone" threads on forums (Reddit / HN / Twitter) and thought I should set up something similar. I wanted a safe sandbox where agents can run in isolation, and I can tinker from wherever I am, including my phone.
I'd recently learned about exe.dev, so I started there and it clicked. It's basically "give me a computer," but with the main parts handled: a real VM (not a container), persistent disk, HTTPS access, and easy sharing.
It also comes with a built-in agent, Shelley, with generous free tokens for Opus 4.5. My first session with it became The Wall: a tiny guestbook where visitors pick a color, drop a message, and each color entry becomes a tile in a living mosaic.

The setup
My setup was intentionally simple to get started with (which I've since polished, and I'll write a separate post about it).
- Phone terminal: Termux + tmux. exe.dev VMs come with a browser-based CLI and agent, but I wanted my own terminal setup.
- Isolated environment: an exe.dev VM so the agent can run wild without touching anything else
- Version control: fine-grained GitHub PAT scoped to a single repo, short-lived with small blast radius
- Agent: Shelley (Opus 4.5) for the first pass then Codex (GPT-5.2) for the polish
Edit: Shelley is now OSS: GitHub
Prompt Summary
I didn’t start with a guestbook. I started with "mood tiles": pick a color, add a mood word, and get a cute pattern name like "gentle-shimmer" or "purple-rain." It worked, but it didn’t feel right. So I pivoted:
pick a color → leave a short message → watch that color join the mosaic, with your message on a tile in that shade.
That pivot is basically the whole thing.
Stack and Shipping
Stack (vibecoded):
- Go (stdlib net/http)
- SQLite
- Vanilla HTML/CSS/JS
- JetBrains Mono + Inter fonts
Shelley can take screenshots, so after a few UI-fix prompts it was good to go.
Sharing is private by default on exe.dev. Going public takes one command:
ssh exe.dev share set-public <vmname>
And it went live. Repo: GitHub
Post-ship polish
Shelley got me to "shipped," but once I started iterating on UI details I ran quickly into the free token ceiling (which, thanks to the exe.dev team, is still quite generous).
VMs come with Codex/Claude preinstalled, so I did a second pass with Codex (GPT-5.2 high) for polish:
- created a blog around the whole thing
- added a proper dark/light mode toggle for the blog
- made the mosaic in the wall feel more sleek
- cleaned up the about / header / footer so the whole page reads neater
That's it.
A small thing, built quickly, shipped from my phone with a reusable setup.