Andi Smith

Technical Leader Product Focused AI Consultant

Deckchair Vibes

  • By Andi Smith
  • 6 minute read

Last week I built and shipped a browser game from a deckchair in Ibiza using nothing but my phone and AI. No laptop. No IDE. No terminal. Just Claude, GitHub and Netlify.

That wasn't the plan. I was supposed to be relaxing.

Of course, as with every time I am away from my desk, my brain started to go into overdrive with new ideas. It's not unusual for me to take a notepad on holiday and write all these ideas down... and then rarely do anything with them. But this year was different.

Shipwreck Haul is a lightweight idle game where you captain a salvage boat, send expeditions, hire a crew, collect treasure, fight pirates and upgrade your ship. It's deliberately simple—something that could genuinely be built and iterated from a phone over the course of a week.

Shipwreck Haul
Shipwreck Haul

Deckchair Vibes

18 months ago, I wrote about building a game with AI — an update to an old Natomic Studios game called Containment DX. Back then it was possible, but I still had to spec the technical details and make a lot of manual changes to get it working the way I intended.

AI has moved on a lot since then and, as I sat on my deckchair, I wondered... what if I could create an entire game from just my mobile device?

Inspired by Splatoon Raiders, I started by planning out what I wanted the game to do with an initial prompt:

I want to create a simple raid style browser game. You are the captain of a boat and you take excursions out to find scrap metal and treasure. It’s button/time based. Each excursion rewards the player and then they can hire new shipmates, upgrade their base and ship and unlock new locations to visit. Help me plan out the upgrades and rewards. Timings should be short, they can get longer but there should always be a way to upgrade the times to keep them short.

After some back and forth with planning, I asked Claude to create a single-page HTML prototype and off we went. That was the only technical direction I gave in the whole project.

The Claude app on my phone made it really easy to try something out. I could suggest an idea and then have it up and running in just a few minutes to playtest.

After a few playtests, I realised the browser in Claude didn't always load the latest version straight away, so I added a build number to verify I was testing the latest version.

One afternoon I wondered if expeditions needed more risk, so I proposed a battle system. Ten minutes later there were pirate battles. The next day the crew were demanding grog. Later came collectibles, a story mode, a bubble-popping minigame, haptics, daily challenges and even a dodgy but catchy pirate shanty.

You can play it here. It plays best on an iPhone because... well, that was what it was built on.

Publishing

Claude Artifacts was my initial plan for publishing the game, but I found it was unreliable when pushing updates. I needed something more immediate, so I decided to self-publish.

Claude made it really easy to get the code. Once I was happy with a feature, I'd copy the HTML straight from Claude, paste it into GitHub in Safari, and let Netlify deploy it automatically. Five minutes later I could open the live game and keep playing.

Testing the game in a regular browser became essential because the built-in Claude browser couldn't access localStorage. That meant every time a new build was generated I had to restart the game. The upside was that the browser could take me straight back to the moment where I'd had the idea or spotted the bug.

At some point Claude decided to add tests in a separate file, and eventually a second simulation file so it could test later game phases. I didn't tell it to do either, but I was happy that it had.

Context is Premium

Although I have a Claude Max account at work, this was clearly not an appropriate use of those resources, so I used my personal Pro account instead. For the first ~100 iterations, this worked quite well. The limits throughout the day actually worked in my favour because they forced me to swim, relax and think about what the game needed next.

Eventually it started getting token-expensive to make even trivial changes. Thankfully, creating a handover document and copying the HTML and test files into a new context solved most of the problem (although the 5,000-line HTML file was starting to push things), and off we'd go again. I reset the context every 50 changes or so to keep token usage under control.

Claude vs OpenAI vs Cursor

Eventually I hit my weekly limit on my Claude Pro account, so I went looking for other options.

I have both an OpenAI account and a Cursor account.

OpenAI was pretty good at generating my changes, but the built-in browser seemed unable to render the Google font. It couldn't access JSDOM, which Claude had been using, and on a mobile device the large HTML file kept crashing. I had no way to copy it, so instead I had to download it to iOS files and upload it using GitHub's file upload. Annoyingly, every version in ChatGPT was given a new filename, so it became tedious to make a new version and I eventually got bored and went back to my holiday.

I'm a big fan of Cursor, but its iOS app wouldn't let me work because I didn't have iOS 26 installed (and wasn't going to install it over hotel Wi-Fi). The web app also refused to open the iOS Files browser, so I couldn't even upload the HTML file to get started.

In the context of a deckchair, Claude was king.

What's Next

This is probably where the story ends. I'd like to tell you I'm working on a new version with loadouts and better features, but it's back to reality and back to real life now.

Last year I wouldn't have believed building a full game on an iOS device was possible. Now it feels almost normal.

I don't think AI is replacing software engineers any time soon, but it is changing what one person can build with a spare afternoon or two, a phone and a decent idea.

Apparently, even from a deckchair.

Play Shipwreck Haul!

Andi Smith

By Andi Smith

Andi Smith is a passionate technical leader who excels at building and scaling high-performing product engineering teams with a focus on business value. He has successfully helped businesses of all sizes from start up, scale up to enterprise build value-driven solutions.

Related Blog Posts