Vibe coding an ISS tracker
I built a simple ISS tracker for family stargazing after getting frustrated juggling multiple apps. One page with a map, countdown timer, and live feed.
You know that moment when technology is supposed to make your life easier, but instead you’re frantically switching between three different browser tabs while your kids bounce around the garden asking “Is that it? Is that the space station?”
Yeah. That was me a few months ago.
The Problem with Perfect Solutions
I’d planned the perfect family stargazing evening. NASA’s ISS tracker? Check. Live video feed? Check. Weather forecast showing clear skies? Double check. What I hadn’t planned for was the reality of trying to coordinate all this while three excited children peppered me with questions and pointed at every airplane in the sky.
“Dad, where is it now?” “Can we see the astronauts?” “Why does your phone keep going dark?”
I found myself juggling NASA’s live feed on one screen, a satellite tracker on another, and my phone’s timer to know when to look up. It was magical and chaotic in equal measure — the kind of beautiful mess that makes you think “there has to be a better way.”
(Narrator voice: There was a better way.)
Sometimes the Best Solution is the Obvious One
Instead of complaining about it on Twitter (though I probably did that too), I spent the next evening building what should have existed all along: one simple page that puts everything together.
Here’s what I realised I actually needed:
-
See where the ISS is right now on a proper map
-
Know exactly when it’ll be overhead in my timezone
-
Quick access to NASA’s live feed when the moment arrives
-
Something that works on mobile because I’m not dragging a laptop into the garden
Not revolutionary. Not going to change the world. Just solving one specific friction point that was driving me mental.
The Beauty of “Good Enough” Technology
I cobbled this together using the kind of tech stack that makes senior developers cry: vanilla HTML, CSS, and JavaScript. No framework. No build process. No dependencies beyond Leaflet.js for the map and the ISS location API.
Want to know a secret? It doesn’t matter.
The thing loads in milliseconds, works on every device, and does exactly what it’s supposed to do. Sometimes the best technology is the technology you don’t notice.
// This is literally how simple the core functionality is
async function updateISSPosition() {
const response = await fetch('http://api.open-notify.org/iss-now.json');
const data = await response.json();
const lat = data.iss_position.latitude;
const lng = data.iss_position.longitude;
// Update the map marker
issMarker.setLatLng([lat, lng]);
}
No webpack. No transpilation. No “enterprise-grade solutions.” Just code that works.
What Actually Matters: Solving Real Problems
Here’s the thing about side projects that actually stick around: they solve a problem you genuinely have. Not a problem you think other people might have. Not a problem that would be cool to solve. A problem that’s irritating you personally.
My ISS tracker does four things:
Shows where the ISS is right now — Updated every few seconds on a world map that doesn’t require a PhD in orbital mechanics to understand
Gives you your local timezone — Because nobody has time to convert UTC to “when should I actually look up”
Direct link to NASA’s live feed — One tap and you’re watching astronauts float around in space (never gets old)
Works on mobile — The revolutionary concept of building something that functions on the device you’ll actually use
That’s it. No social features. No gamification. No AI integration (sorry, Claude). Just utility.
The Vibe-Coded Development Process
I’ll be honest: this wasn’t planned. It was what the kids would call “vibe-coded” — built entirely on the energy of being slightly annoyed and having a free evening.
Started with Claude Opus 4.0 to get the basic structure, then used OpenAI Codex for some fine-tuning, and finally Google’s Gemini to polish the rough edges. Each AI had different strengths, and I shamelessly used whichever one gave me the result I wanted.
(This is the reality of modern development, isn’t it? We’re all prompt engineers now, whether we admit it or not.)
I actually covered this project and the whole concept of vibe coding in last week’s Signal Over Noise newsletter — along with another “weird little thing” I built around the same time. The philosophy behind it all is what I call the beginner’s mind: approaching problems with curiosity rather than ego, following instincts over documentation.
The entire build took maybe three hours. Most of that was me going down a rabbit hole trying to make the map markers look “just right” — because apparently I care deeply about 16-pixel icons at 11 PM.
Why Small Tools Create Big Delight
There’s something magical about building exactly what you need and nothing more. No feature creep. No stakeholder meetings. No “what if we also…” conversations.
Just: “I have this specific problem, and now I’ve solved it.”
The ISS tracker sits in my bookmarks bar now. When the kids want to see the space station, I tap one bookmark, check the map, and we all know exactly when to look up. It turns a chaotic juggling act into a moment of shared wonder.
And honestly? That transformation from friction to flow — that’s what good technology should feel like.
The Lesson Hidden in Plain Sight
I keep thinking about this project because it represents something important about how we approach building things. Not everything needs to be a startup. Not everything needs to scale. Not everything needs to revolutionise an industry.
Sometimes you just need to solve your own problem, well, for yourself.
The most satisfying tools are often the smallest ones. The ones that eliminate a specific piece of friction so smoothly you forget it was ever a problem. The ones that don’t announce themselves or demand attention — they just work.
Utility equals delight when it’s done right. And “done right” often means “done simply.”
Try It Yourself (Or Build Your Own)
If you want to check out the ISS tracker, it’s live at [your URL here]. Use it the next time you want to spot the space station with your family. Or don’t — honestly, the real value was in building it, not necessarily in everyone using it.
But here’s what I’d love to see: more people building tiny tools that solve their own problems.
Got a friction point in your daily routine? A thing that annoys you just enough to be noticeable but not enough to complain about? Maybe that’s your next evening project.
Because the best solutions aren’t always the ones that scale to millions of users. Sometimes they’re the ones that scale to three kids in a garden, looking up at the night sky, wondering if those tiny lights are astronauts.
P.S. — We successfully spotted the ISS last week using the tracker. The kids cheered. I felt like a wizard. Technology done right feels like magic, even when you built it yourself.
Especially when you built it yourself.