← Work

2017 —

LiveTRA

A better way to know when your train is coming.

Real-time train information for Taiwan Railways — schedules, delays, transfers and live status in one screen.

Open the live product ↗
LiveTRA

people used it this year

490,000

clicks from search, 12 months

1.04M

average position on Google

6.1

arrive directly, skipping search

32%

Figures from Google Analytics and Search Console.

The problem

Taiwan Railways' own site and app show far too much, and bury the one thing a commuter actually needs. And that matters more than it sounds, because of where people use it: on the move, with a laptop bag on one shoulder and a coffee in the other hand. You have one thumb and about four seconds. Every extra tap is a real cost.

What I did about it

I built the version I wanted: open it, and the next departures are already there. No menu, no search, no account. Then I gave every single station its own page — which turned out to matter more than I expected.

One page per station

That decision is why LiveTRA gets found. The top search queries are not "train timetable" — they are 台中火車站時刻表, 彰化火車站時刻表, 田中火車站時刻表. People search for their own station, and small stations like Tianzhong and Chaozhou rank just as well as Taichung and Kaohsiung. Over twelve months that added up to 1.04 million clicks from 11.6 million impressions, at an average position of 6.1.

The number I actually care about

Around a third of visits — 32% — arrive directly, without going through search at all. For comparison, DroneMapTW sits at 12%. That gap is the whole point: these are commuters who bookmarked it or installed it, and now open it every morning. It stopped being a website and became part of someone's routine.

Nine years, four rewrites

v1 in 2017, v2 in 2022, v3 in 2024, v4 in 2026 — now split into four services: site, API, cron jobs and an admin panel. Each handover took days, not months, and it never went dark. It also speaks eight languages, works offline as a PWA, and I have been the only person maintaining it the entire time.

Out in the wild

In July 2026 a travel account posted that Jiuzhantou station in Taiwan was abandoned — "the trains are never coming back." Someone replied with a LiveTRA link to that station's timetable: the trains, in fact, are still running. Somebody I have never met used the thing I built to correct a stranger on the internet. That is the moment a product becomes real.

What I did
Product design · UX · Frontend · Backend · APIs · Data · Infrastructure
Built with
Nuxt · Vue · Node.js · TypeScript · PostgreSQL · PWA · 8 languages
Status
Live and maintained since 2017.
Contact

Have something you want built?

Have an idea, a problem, or something you wish existed? I'd like to hear about it.