Waypoints

A Personal BioGeography

Waypoints is a full-stack geospatial travel memoir built with tools like Leaflet, Overpass API, OpenRouteService, and geojson.io. With interactive mapping, photo reels, and custom layers, this is data-driven storytelling at its most personal.

Mapping my travels turned into a masterclass in geospatial tools and memory—coordinates, mapping APIs, and long-lost places I hadn’t thought about in years. From tracing a train ride in India to redrawing a boat trip in Costa Rica, the technical work brought deep personal reflection. Rebuilding a moment from a blurry photo, rerouting old paths, rediscovering forgotten places. It was sweetly profound, nostalgic, and oddly healing. It's far from done. So is life.

I look forward to never finishing it.


Project Links

Live Website

GitHub Repository


Project Overview

Waypoints maps my story across continents, from the serene beaches of the Caribbean to the vast deserts of Namibia and the vibrant streets of India. It’s a visual memoir powered by geospatial tools and narrative intent. Technically, it merges full-stack development with advanced mapping capabilities to tell a human story — my human story — through data.

Core technologies used include:

  • Leaflet for interactive maps with custom markers, clustering, and polylines (e.g., hiking routes).
  • Overpass API to fetch OpenStreetMap data like trails, waterways, and ferry lines.
  • Nominatim for geocoding and reverse geocoding.
  • OpenRouteService API for generating vehicle routes automatically.
  • GeographicLib for great circle and geodesic calculations.
  • geojson.io for hand-drawing and exporting custom GeoJSONs.
  • GeoJSON as the foundation for spatial data representation.

The backend, built with Python, integrates data from APIs, Google Sheets, and CSV files, with Google Sheets serving as a lightweight, SQL-style data layer. The map includes custom layers for activities, travel modes, and pop-up photo galleries, delivering a mobile-responsive, engaging experience.

Waypoints is a personal archive and technical showcase—proof that data storytelling can be as emotional as it is analytical. It demonstrates my skills in geospatial data processing, API integration, and frontend experience design. It's data storytelling at the most intimate of levels, my memories.


Gallery



Main markers on Map of Earth Landing page, with main markers colored and mapped by life imprint. Click any marker to explore interactive popups and stories.

Namibia Photo Reel Namibia popup: Example of a photo reel and commentary displayed when clicking a marker.

Activities in the Caribbean Virgin Islands: Activity markers and routes layer shown together, highlighting clustered adventures and travel paths.

India Photo Reel India popup: Photo reel and commentary, with routes layer, demonstrating how popups combine images and narrative.

Activities in Vermont Vermont: Clustered activity icons and visible routes layer, illustrating local adventures and travel paths.

Entity Relationship Diagram Entity Relationship Diagram (tentative): Visual overview of the data model powering markers, popups, and route overlays.

References

  • Leaflet.js - Interactive map rendering library for creating dynamic and visually engaging maps. Learn more.
  • Overpass API - Used for querying OpenStreetMap data to retrieve geographic information. Learn more.
  • Nominatim - Used for geocoding and reverse geocoding to convert locations into geographic coordinates. Learn more.
  • OpenRouteService API - Provides routing and geospatial analysis services for various transportation modes. Learn more.
  • GeographicLib - A library for performing geographic calculations, such as geodesics and projections (e.g., great circle routes). Learn more.
  • geojson.io - A web-based tool for drawing and editing custom geographic data, such as boat and ferry routes, and exporting them in GeoJSON format. Learn more.
  • GeoJSON Specification - A format for encoding geographic data structures. Learn more.
  • Personal Photos - All images used in this project are from my personal collection and are protected under copyright law. They may not be copied, modified, or distributed without explicit written permission. If you appear in any of the photos and would like them removed, please contact me at bryan.johns.official@gmail.com.
  • Personal Memory - The narratives and waypoints are based on my personal experiences and recollections.