Selected work

Things I made, and still use.

All three are products I built and still maintain. One of them exists because the same thing annoyed me every day until I fixed it.

LiveTRA

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.

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.
DroneMapTW

2025 —

DroneMapTW

Where can I fly?

An interactive map of Taiwan's drone flight restrictions — built because every existing one was hard to look at.

What I did
Product design · UX · Data visualization · Maps · Frontend · Backend · Infrastructure
Built with
Nuxt · Vue · TypeScript · TypeORM · PostgreSQL + PostGIS · tileserver-gl · planetiler · tippecanoe · Python
Status
Live, and checked against the source every day.
ScrumPoker

2017 · 2026

ScrumPoker

Estimation was taking whole afternoons.

Planning poker you vote on from your phone, with the points syncing straight back into JIRA. Made for my own team at work.

What I did
Product design · UI · Frontend · Real-time sync · JIRA integration
Built with
Nuxt · Vue · Firebase · Cloud Functions · Tailwind
Status
Live, and used by my team.