AI coding stationview

TLDR;
I recently used AI entirely hands off code, no or very little code written myself (unless you count .env files) and created a free train departure board site, stationview.app, mostly because I was sick of having to go through the pain of entering my origin and destination just to see someone else’s interpretation of what a departure board should look like. A few months later it's getting 1-2k people a day. Turns out putting something useful out there still beats arguing about whether AI wrote it or not. When does AI slop become AI soup?
The itch
If you've ever stood at a station in London or the UK and tried to check which platform your train is on, you'll know the deal. Open the official app, c2c, wait no national rail, oh it’s GWR, wait for it to load, dismiss a prompt, dig past a journey planner that wants an origin and destination when all you wanted was the board. Then squint at a list that looks nothing like the yellow-on-black screens hanging over the concourse.
I wanted the board. Just the board. A page you could bookmark, open with one tap, and recognise immediately because it looks like the thing you're standing under. So I built Station View. It was an itch I wanted scratching it was basically just for me.
What “AI coding" actually meant
AI coding gets a bad reputation, usually from people imagining someone typing "make me Uber but for dogs" into a chat box and shipping the result. That is not what happened here. What happened is closer to having a very fast pair programmer who never gets tired, has read every docs page, but still requires you to understand what good looks like.
I described the board. I pointed at real station displays. I asked for layouts, then tore them apart when the spacing felt wrong. I used AI to scaffold routes, wire refresh logic, dig through API quirks, and spit out the boring glue code that used to eat an evening. Then I spent the interesting hours on the bits that matter to a human on a platform: does this look right at a glance, does it update without being weird, can I find Kings Cross by typing KGX.
The skill did not disappear. It moved. Less time tackling boilerplate, more time deciding what the product should feel like and catching when the model confidently invented something that would annoy me and others using the web app.
Ship the boring useful thing
The first proper version went live around the start of April. No accounts required. No download. Every station gets a permanent URL. Live departures that refresh. Boards styled like the ones you already trust. Search by name or CRS code. Later came live train tracking, favourites, embeds, the Underground, translations, and a slow crawl out into other European networks.
None of that is a huge pitch deck, game changing feature. It's the stuff you add when you're actually using the thing yourself and keep hitting the same tiny annoyances. Live refresh timing was a good example. Too aggressive and you're hammering sources and phones for no reason. Too sleepy and people miss a delay. I tweaked it until it felt right, then put a subtle animation on changes so you notice the board moved without it screaming at you.
Then strangers showed up
I posted updates on Indie Hackers for a little bit, shared it with people who commute, asked for feedback on the design from enthusiasts and mostly just used it myself. It was bookmarks, shared links, embeds and people opening /liverpool-street because that URL does exactly what it says.
Somewhere along the way the numbers settled into a quiet, slightly surreal place. Nothing crazy don’t get me wrong but also a genuine user base, people are relying on this for info and they actually like it. None of this it’s an AI wrapper blah blah. Just a free utility that scratches a real itch often enough that strangers keep coming back.
That number changes how you feel about the codebase overnight. When it's just you, a slightly janky refresh is a shrug. When it's thousands of people checking a platform before work, you start caring about the boring reliability stuff again. AI coding gets you moving. Users make you responsible.
What I actually learned
AI is very good at collapsing the gap between "I can picture this" and "there is a page doing a rough version of it". That alone is a huge deal for side projects. The graveyard of half-finished apps is mostly full of ideas that died in the setup swamp. Using AI to do a lot if not all the coding relieves a lot of that pressure.
It is also very happy to paper over bad decisions if you let it. You still need taste. You still need to know when a solution is clever versus fragile. You still need to open the site on your phone at the station and ask whether a stressed human would understand it in three seconds.
And the growth lesson is almost insultingly simple. Solve a problem you have, make the answer stupidly easy to open again, and keep shipping the next obvious improvement. Aesthetic helps. Station View looking like a real board is not decoration, it's trust. But the core is still a single job, done clearly.
Despite this being hands off it still really helped understand what kind of caching I would need, where I would deploy this thing and all of the hundreds of bits in between to reduce cost and make the application fast. None of this I coded myself of course but understanding what to do and what optimisations to make is now most of the work.
Final thoughts
A few years ago I wrote about AI developer tools feeling like a power drill instead of a hand screwdriver. Vibe coding is what happens when that drill gets a bit too powerful and you have to decide whether you're building furniture or just making a lot of holes. Used well, it lets a one-person project move like a small team. Used lazily, you get a demo that looks finished until anyone leans on it.
Station View works because I leaned on it myself. AI helped me build faster. The users made sure I built something worth keeping online. If you've got a small annoying problem and a weekend, go make the thing. The tools are good enough now that "I might vibe code an app" is no longer a joke. Sometimes it ends up with a couple thousand people checking train times.
✌️