feat(rail): add a Rail layer with keyless live trains

Live trains from 30 keyless operator feeds: GPS positions from 29 and
Irish Rail's station reports, shown as the operators publish them. 28
work out of the box; Renfe long and medium distance and KTMB appear once
their pack is built, because their vehicles name no route.

Packs are opt-in (scripts/build-rail-paths.mjs): the operator's own
route lines, stop names, next stops and trip-update delays for live
trains. Nothing downloads when the app starts, no train is placed from a
timetable, and no request carries a deployer's key.
This commit is contained in:
Denis Groshev committed 2026-11-11 16:06:22 +01:00
1 parent 14db73f201
commit 830c080803
114 files changed
+26639 -26

No files matched your search

+15
View File
@@ -3357,6 +3357,21 @@
"Reported voyage": "הפלגה שדווחה",
"REPORTED VOYAGE": "הפלגה שדווחה",
"1 min/s": "דקה/שנ׳",
"Rail": "רכבות",
"Urban rail": "רכבת עירונית",
"Local rail": "רכבת מקומית",
"Regional rail": "רכבת אזורית",
"National rail": "רכבת ארצית",
"International rail": "רכבת בינלאומית",
"Hide {category}": "הסתרת {category}",
"Show {category}": "הצגת {category}",
"Live GPS": "GPS חי",
"Estimated from station reports": "משוער לפי דיווחי תחנות",
"To {headsign}": "אל {headsign}",
"Next {stop} {time} {relative}": "התחנה הבאה {stop} {time} {relative}",
"Prev {stop} {time} {relative}": "התחנה הקודמת {stop} {time} {relative}",
"(+{minutes} min late)": "(+{minutes} דק׳ איחור)",
"Exit cockpit to fly to a train": "צא מתא הטייס כדי לטוס לרכבת",
"Photo © {photographer}": "צילום © {photographer}",
"1 h/s": "שעה/שנ׳",
"1 d/s": "יום/שנ׳",