3 pointsby raduvul5 hours ago2 comments
  • raduvul5 hours ago
    I've been commuting on the Paris RER for years and got frustrated with the official apps — they tell you "traffic disrupted" but not where, how bad, or for how long.

    So I built o'RER: https://o-rer.com

    What it does:

    Live map with actual train positions, updated every 10 seconds via WebSocket Line status with delay severity levels (normal / disrupted / major / critical) Stop-level timetables — next 3 departures, with real delays, not scheduled times Push notifications when a train is approaching your stop Delay certificate — generates a printable PDF with a per-minute history of delays (useful for justifying lateness to an employer) Delay leaderboard — ranks all 5 RER lines by average delay over the last hour Tech stack: React + Vite frontend, Node.js + Express backend, WebSocket for live positions, Redis for caching, PostgreSQL/PostGIS for geo queries. Data from Île-de-France Mobilités SIRI/GTFS APIs (public open data).

    Some numbers:

    500–800 trains tracked simultaneously at peak hours 45,000+ stop points across the full Île-de-France network 3 SIRI feeds merged per update cycle ~15,000 API calls/hour during peak windows It's a PWA — no App Store, installs directly from the browser. Works on iOS and Android.

    No ads, no data selling, most features work without an account. Auth (Google) is only needed for push notification preferences.

    Happy to answer questions about the real-time architecture, the IDFM API quirks, or anything else. Oh, and BTW: hosted on Railway because... trains :p

    • johncoltrane5 hours ago
      Good work!

      FWIW, I use Chrome 145.0.7632.117 on a M1 MacBook Pro and I just got a notification suggesting me to "correct" the o'rer tab because it used too much resource. I was looking at the details of my Transilien station.

      Also, looking a the same "details" popin, I see some irrelevant info when I click on the "alert sign" of a Transilien line (Line N in this case): something about bus stops.

      I have a couple of questions about the API:

      I've looked at the data provided by IDFM and SNCF a few times but I was never able to find a way to match a commercial train number, say "134671", to a physical train number, say "211L" or "Z50421/22" or the more complicated EVN. Did you, by any chance come upon such a thing?

      Also, could you confirm that the only data available concerns _departure_ times?

      Good luck.

  • TheJCDenton5 hours ago
    Très sympa