Maps
Free distance/routing (OSRM) and geocoding (Nominatim/OSM). No API keys needed.
Geocoding (place name → coordinates)
bash scripts/geocode.sh "Times Square, New York"
Returns lat,lon and display name. Use this first when you have place names instead of coordinates.
Distance & Route
bash scripts/distance.sh <origin_lat>,<origin_lon> <dest_lat>,<dest_lon> [mode]
Modes: driving (default), foot, bicycle
Examples:
# Manhattan to JFK Airport
bash scripts/distance.sh 40.7580,-73.9855 40.6413,-73.7781 driving
# Golden Gate Park to Fisherman's Wharf (walking)
bash scripts/distance.sh 37.7694,-122.4862 37.8080,-122.4177 foot
Workflow
- If user gives place names → geocode both with
geocode.sh - Use returned lat,lon pairs with
distance.sh - Report distance in km and duration in minutes
Limits
- OSRM: free public demo server, no hard rate limit but be reasonable
- Nominatim: max 1 request/second (OSM policy), include User-Agent
- No live traffic data — durations are estimates based on road type/speed
- Routing is road-network only (no public transit)