feat(transit): add 139 feeds from the open GTFS-Realtime catalogues

Ten operators whose published terms were read and permit display, and
129 keyless feeds with no stated licence, marked as such. Feeds whose
terms need a key, registration or permission are left out and a test
keeps their hosts unregistered.
This commit is contained in:
Said Turksever committed 2026-11-13 16:12:36 +00:00
1 parent 7b2e8729fe
commit 0ba90fbf61
7 files changed
+2852 -2

No files matched your search

+6 -1
View File
@@ -1,5 +1,6 @@
import { greatCircleKm } from '../geoDistance.js';
import { RIO_ROUTE_NAMES } from './rioRouteNames.js';
import { CATALOGUE_TRANSIT_FEED_ROWS } from './transitFeedsCatalogue.js';
import { FRANCE_TRANSIT_FEED_ROWS } from './transitFeedsFrance.js';
import { FRANCE_ROUTE_NAMES } from './transitRouteNamesFrance.js';
@@ -13,7 +14,8 @@ import { FRANCE_ROUTE_NAMES } from './transitRouteNamesFrance.js';
* never fetch client-supplied URLs). Adding a feed means adding a row here,
* a DATA_SOURCES.md row with its license, and a credit in dataCredits.js.
* The French networks listed on transport.data.gouv.fr are rows of the same
* shape in `transitFeedsFrance.js`, appended to the registry below.
* shape in `transitFeedsFrance.js`, and feeds added from the open catalogues
* are in `transitFeedsCatalogue.js`; both are appended to the registry below.
*
* Admission rules for a feed:
* - No key, token, or registration required (identify-yourself headers are
@@ -1643,6 +1645,9 @@ export const TRANSIT_FEED_REGISTRY = Object.freeze([
defaultMode: 'bus',
}),
...FRANCE_TRANSIT_FEED_ROWS.map(franceTransitFeed),
...CATALOGUE_TRANSIT_FEED_ROWS.map((row) =>
transitFeed({ defaultMode: 'bus', ...row }),
),
]);
/**