______________________________ __/ [] [] gopher-cta [] \__ | |____________________________| | |__| o o o o o o o |____| / (O)========================(O) \ '----------------------------------------' live CTA 'L', dot by dot Live CTA 'L' train positions, rendered as a Unicode-braille map of Chicago and served over Gopher -- the 1991 protocol, no HTTP, no JavaScript. What's here: * a braille train map (plain), and an ANSI colour version overlaying the Chicago coastline, river, expressways and landmark codes under the trains * a matching char-cell geographic atlas (atlas.ansi) * per-line listings and a detail page for every running train * Chicago landmarks, each with its own page * AI narration panels -- dispatch, a per-station SITREP, event advisories (fed by the cta-track-grid Worker; see below) How it works: A Rust fetcher polls the CTA Train Tracker API, renders a complete static gopher tree each cycle, and atomically swaps it into place; the geomyidae daemon serves it. One km-based projection (cos(lat) longitude shrink + terminal cell-aspect correction) draws the city north-up and undistorted. It cross-compiles to big-endian PowerPC -- it runs on a PowerMac G5. Canvas: 48x38 braille cells (96x152 pixels). Source: https://github.com/felipedbene/gopher-cta Live: gopher://gopher.debene.dev:70/ Part of a small CTA family. The flagship is cta-track-grid -- a real-time web tracker whose Worker also powers the AI panels above: https://tracker.debene.dev/ https://github.com/felipedbene/cta-track-grid Built in Rust. Data from the CTA Train Tracker API. Not affiliated with the Chicago Transit Authority.