August 8, 2026
RNG - a vibe-coded app
I needed an app for my watch, just a simple app that would just generate a random number.
I looked in the store, which is on Garmin’s Connect IQ app site, and I found one, but it wasn’t quite what I wanted. I decided I would ask Claude how hard it was to make an app for my Garmin watch.
Claude not only made the app, but it wrote the whole plan for me, and this was in the Claude.ai website, not VSCode or Claude Code. I took that output and I asked for, “Write a prompt for Claude Code,” and it did that. I plugged that into Claude Code, and my app was born. I probably only had to do two or three major tweaks to get it to work like I wanted.
But it did burn through my free credits that I got to use Fable, and I had like $80 or $90 that I hadn’t spent yet. It burned through all of that. It burned through all of my credits because one of the tricks that I have found is to use sub-agents to validate/bug-fix code.
> my actual first prompt
I would like a garmin watch app, I have an insight solar tactical 3. I want a random number
generator with range that I can configure. I have no idea how to code it or even work within
the garmin echo system.
> additional prompts
"I'm trying to test my app, and I have RandomRangeApp.mc selected, and then I go to Run and Run without debugging. I'm getting an error saying manifest file is not in the correct format."
"How does someone configure the range of the roll?"
"Can you move the range displayed where the GPS to Roll is, move the gps to role up where the range is but shift it left."
"can you put gps roll on two lines in the tiny screen on the instinct?"
"no move the range to the top left, but under the word Range, and move the number generated down a little"
"that is better but the generated number obfuscates the botton of the second part of the range, can you scale that down a little"
"what models of garmin watches have the same type of layout as the instinct 3 solar, with the little screen?"
"add those to the manifest"
"use 2 subagents to review this app"
"make all of the fixes" — sent alongside a local /model default slash command (not really a prompt to me, but it ran in the same turn), followed by a repeated "make all fixes"
"design new art"
"yes, build the remaining ones"
"I updated the default value to 1 to 20, and max range -99999 to 99999. I want to call the app 'Simple RNG'."
"can you create a couple different launcher icon pngs so I can choose one"
"how can I browse to them on a mac?"
"I'd like to avoid the dice, there is already an app with that. how about RNG in caps?"
"lets go with verdana for all of them"
"I need a catchy description for this app, include suggestions about how to use it like dungeons and dragons, magic the gathering and any other good uses"
"Don't say simple RNG, there is an app called simply-random, I want to avoid anything similar."
"Wrist RNG" — your answer when I asked you to pick a name via the multiple-choice prompt
"remove the > in the read me so I can copy/paste that"
"can you give me all of the prompts that I used during this conversaton?" — this message

Thanks for reading.
This post was written by hacksforcoffee.