GEO engine — live on/off-track (Turf.js) over GeoJSON, rendered on OpenStreetMap (MapLibre)
DEMO ONLY — MapLibre + Turf loaded from CDN and tiles from openstreetmap.org. Production vendors/pins both libs and self-hosts tiles (PMTiles). The detection math is the real point and runs fully client-side (no cloud, no AI).
Drag the ● "me" marker around the park. Markers: ◆ geocache · ◆ HQR · ◆ POI.
Point target — "reached it?"
Distance—
Arrival radius30 m
Verdict—
Path target — "on track?"
Off-route distance—
Corridor25 m
Progress along route—
Verdict—
Engine calls used
turf.distance · turf.pointToLineDistance · turf.nearestPointOnLine — same calls for every GEO consumer; only target + threshold differ.