Portrait of Donnie D'Amato

willarrive.in, Real-Time NYC Train Arrivals

Pleasant Travel

A minimal PWA for New York City transit: save a subway line to your device, grant location once, and see the next trains at your nearest station in real time.

2016

On this page

Overview

willarrive.in is a deliberately minimal NYC transit PWA, with a separate, branded app for each subway line. Open the one you saved and it shows the next trains in both directions at your closest station.

Problem

Transit apps usually involve a lot of navigation, ironic for tools whose whole job is to get you somewhere. Each extra tap is friction when you just want to know when the next train comes.

Constraints

Approach

The first launch asks for your location once; from then on, opening the saved line uses your geo position to find the closest station and show the next trains in both directions in real time, with nothing to navigate.

Key Decisions

Let the device pick the nearest station

Reasoning Alternatives
Asking for location once removes the selection step forever after, which is the difference between checking the time and operating an app. Manual station selection

Result & Impact

willarrive.in showed how far you can cut interaction cost when a tool is allowed to do one thing: location, live arrivals, and a saved line collapse into a screen with nothing to operate.

Learnings

The story behind it

The name was part of the spark: the domain willarrive.in was available, and a line subdomain reads as a sentence, e.willarrive.in, “E will arrive in.” Each line got its own branded page, the E rendered as a blue circle with a white E, just like the station signage.

Arrivals came from the MTA’s own real-time feed. There was no public key at the time, so I inspected the requests on the MTA’s site, found the API key they were using, and, since nothing checked which site was making the call, queried the same feed from mine. Remember to have your server check where the request is coming from, kids!

All projects
Schedule a chat