Skip to content

itay-raveh/wanderbound

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

862 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Wanderbound

Wanderbound

Turn a Polarsteps data export into a print-ready photo album.

CI Release License

Generated album page with destination info, photo, coordinates, and weather

Upload your Polarsteps ZIP and get a laid-out album - covers, overview page, maps, photo pages - that you can edit in the browser and export to PDF.

  • Photo layout algorithm packs images into grids, with drag-and-drop reordering
  • Upgrade low-resolution Polarsteps photos with originals from Google Photos
  • GPS tracks classified into flights, hikes, drives, and walks - add map pages with satellite imagery and elevation profiles
  • Videos in albums - scrub frame-by-frame to pick a poster image
  • Full RTL and localization support (English and Hebrew)
  • PDF export via headless Chromium

Map page with satellite imagery and elevation profile  Trip overview page  Auto-generated photo grid layout

Tech Stack

Backend Python 3.14, FastAPI, SQLAlchemy, Polars, Playwright, Pillow, ffmpeg
Frontend Vue 3, TypeScript, Quasar, Mapbox GL JS
Database PostgreSQL 18
External APIs Open-Meteo (elevations + weather), Mapbox (tiles + routing), Google Photos Picker (photo upgrade), OpenStreetMap Overpass (named peaks)

Self-Hosting

Requires Docker with Compose.

git clone https://github.com/itay-raveh/wanderbound.git
cd wanderbound

cp .env.example .env
# Fill in the required values

docker compose up -d

Open http://localhost:5173.

For production, set DOMAIN and ENVIRONMENT=production in .env and run docker compose -f compose.yml up -d.

The Compose stack runs the app, database, and frontend. Configure database and app data backups in your deployment infrastructure.

The backend stores upload and processing progress in shared storage and Postgres, so multiple backend workers can serve the same user flow. All backend workers must use the same DATA_FOLDER volume and database.

Development

mise manages tool versions and all project commands. Install it, then:

mise run setup               # Install deps, generate assets, run migrations
docker compose up db -d      # Start Postgres
mise run dev:backend         # FastAPI dev server
mise run dev:frontend        # Vite dev server

Run mise tasks to see all available commands. Extra arguments pass through - e.g., mise run test:backend -- -k test_auth.

About

Turn a Polarsteps data export into a print-ready photo album.

Topics

Resources

License

Security policy

Stars

1 star

Watchers

0 watching

Forks

Packages

 
 
 

Contributors