what if your smartwatch had a tiny creature living inside it. one that thrives when you're healthy and dies when you neglect yourself
that's garmigotchi. a tamagotchi-style virtual pet for garmin watches that feeds on your real health data
the concept
your garmin already tracks everything. body battery, stress levels, sleep quality, steps, heart rate. but most people ignore these metrics until something goes wrong
garmigotchi turns that data into something you actually care about. a small creature that visibly reacts to how you're treating your body
high stress for too long? your pet gets anxious. didn't sleep well? it looks exhausted. hit your step goal with energy to spare? it's ecstatic
and if you consistently neglect your health? it dies. you'll have to wait until next month for a new one
how it works
the creature lives in a small circular area on your instinct 3 watchface. every minute it checks your health metrics and updates its mood
the mood system
i mapped garmin's metrics to a mood grid based on body battery and stress:

each mood has its own sprite animation and personality. an ecstatic creature bounces around energetically. a sleepy one barely moves
neglect points
here's where it gets interesting. the creature tracks "neglect points" that accumulate when you're not taking care of yourself:
- body battery drops to critical? +1 point per hour
- terrible sleep score? +2 points
- high stress for 30+ minutes? +1 point
- didn't hit your step goal? +0.5 to +1 point
good days heal your creature. a solid night's sleep combined with hitting your step goal removes 2 neglect points
but let it accumulate to 16 points and your creature dies. becomes a ghost until the next month when a new egg hatches
evolution
the creature evolves through 5 stages each month:
- Egg (days 1-3)
- Blob (days 3-14)
- Pup (days 14-21)
- Mutt (days 21-31)
- Elder (day 31+)
keep it alive long enough and you'll see the full evolution. kill it early and you're stuck with a ghost
the tech
building for garmin watches is... different. they use monkeyc, a proprietary language that compiles to run on extremely resource-constrained hardware
every sprite, every animation frame, every string. it all counts against tight memory limits. i ended up with 110+ pre-rendered sprites covering all mood and evolution combinations
the mood calculation runs every minute, pulling data from:
- body battery sensor
- stress levels
- heart rate
- step count vs goal
- previous night's sleep score
state persists locally on the watch. your creature's neglect points, evolution stage, and death status survive restarts
why i built this
i've had a garmin for years. the health data is genuinely useful but i'd only check it reactively. after feeling tired or stressed
garmigotchi flips that. now i glance at my watch and immediately see how i'm doing. the little creature provides instant feedback without needing to dig through menus
it's also surprisingly motivating. seeing my pet look sick because i've been stressed all day actually makes me want to take a break. hitting my step goal feels more rewarding when my creature celebrates with me :)
what's next
the watchface is built for all instinct watches. i'm working on adding more creature variants
it's currently in beta. if you want to keep a virtual pet alive with your health data, check it out at garmigotchi.vercel.app



