Skip to main content
EJ Centeno

2024 · Personal · active

GPXShadow

Converts GPX fitness tracks into customizable silhouette graphics. Integrates directly with the Strava API so athletes can pull activities without manual exports.

Role: Solo

Vue.jsTailwind CSSFirebaseStrava API
GPXShadow

The Idea

After long cycling rides, I wanted a clean way to visualize the route — not the full map with roads and labels, but a minimal silhouette that could work as a poster or a social share. GPXShadow takes a GPX file, parses the GPS coordinates, and renders a clean route shape in an adjustable aspect ratio.

Strava Integration

The friction of exporting GPX files from Strava manually got old fast. I added OAuth authentication with the Strava API so users can connect their athlete account and pull activities directly — no file management required.

The best tool is one you actually use. Getting rid of the export-import step made the difference between a project I demoed and one I use every week.

Tech

Vue 3 + Composition API, Tailwind CSS for UI, Firebase for auth and user storage, Strava API v3 for activity data. The GPX parsing and SVG rendering are done client-side with no backend — keeping infrastructure costs at zero.

← Back to all projects