Observatory / Methodology
Public research · v0.1
MOBILITY, IN PERSPECTIVE

Make the methods visible.

A reproducible starting point for a defensible accessibility study.

PHASE 01 · IMPLEMENTED

What this dashboard measures

Stop proximity is the share of an official municipal polygon lying within 400, 800, or 1,200 metres of a GTFS boarding location. All stops in both regional feeds are considered, including stops outside city limits. Only municipal stops are counted and displayed in the inventory.

  1. Download public GTFS archives and official municipal boundary geometries. Preserve retrieval times, checksums, and source schemas.
  2. Validate stop IDs, coordinates, route and trip references, calendar presence, and boundary geometry. Select GTFS boarding locations, excluding parent stations and entrances.
  3. Project boundaries and stops to NAD83 / UTM zone 17N (EPSG:26917), with distances in metres.
  4. Buffer nearby stops, union overlapping areas, and intersect with each official municipal polygon. Divide by municipal polygon area, including water.
  5. Export GeoJSON in WGS84 and CSV summaries. Display map geometries simplified to 3 metres; statistics use unsimplified geometry and 16 segments per buffer quadrant.
Proximity(r) = area(city ∩ union(stop buffers at r)) / area(city)

Combined-city percentages are area-weighted, using municipal area rounded to 0.01 km² and source percentages rounded to 0.01 percentage points. Map display uses a web basemap; no distance is calculated in Web Mercator.

What remains unknown

  • Proximity buffers do not represent walking routes or accessible sidewalks.
  • Area denominator includes water within official municipal boundaries; it is not land area or population coverage.
  • Stops are from archived schedules; active service on a selected date is not evaluated.
  • Network, population, jobs, destination, equity and reliability measures are unavailable.
  • Stops outside city limits are retained for buffer analysis; dashboard stop counts report municipal locations only.

Missing measures are unavailable, never zero. The MVP makes no claims about accessible sidewalks, observed reliability, service frequency, residents served, or causes of geographic differences.

VALIDATION RECORD

Archive checks and reproducibility

HART

HART-google_transit-9-30-2026.zip

2,246 feed stop records · 32 routes · 6,307 trips · 207,008 stop-time records.

Calendar envelope: 20260816–20270102. This is not a guarantee of service on every date. Calendar exceptions have not been applied to an active-service query.

Structural checks only. No time-dependent routing, active-service or observed reliability claims.

PSTA

PSTA-google_transit-9-30-2026.zip

4,016 feed stop records · 43 routes · 15,193 trips · 878,579 stop-time records.

Calendar envelope: 20260607–20270605. This is not a guarantee of service on every date. Calendar exceptions have not been applied to an active-service query.

Structural checks only. No time-dependent routing, active-service or observed reliability claims.

Bundle generated 11/15/2026, 3:20:05 AM Eastern. Retrieval timestamps and source hashes appear in Data & sources. Structural validation is a preliminary check, not a full GTFS validator or journey validation.

Reproduce locally

python -m venv .venv
# Activate the virtual environment
python -m pip install -r requirements.txt
python -m pipeline.build
python -m pytest
npm ci
npm test
npm run build
RESEARCH ROADMAP · NOT YET COMPUTED

From proximity to opportunity

Phase 2: validate an OpenStreetMap pedestrian graph, connect stops and origins, integrate OpenTripPlanner or R5 with full regional GTFS, and sample multiple departures on weekday and weekend service dates. Apply calendars and exceptions and check journeys against published timetables.

Aᵢ(T) = Σⱼ Oⱼ × I(tᵢⱼ ≤ T)

Travel times must include walking, waiting, transfers, and in-vehicle time. Test walking speeds and 15, 30, 45, and 60 minute thresholds. Classify failed routing separately from unreachable destinations.

Phase 3: integrate ACS estimates and margins of error, Census geography, LODES jobs, and validated essential destinations. Use within-city origin populations, document boundary allocation, and calculate population-weighted distributions and Gini coefficients.

Phase 4: compare documented frequency, stop, and pedestrian-connection scenarios against a fixed baseline. Report assumptions and uncertainty without causal claims.