03 / 09 · Websites · 2025
My Travel Footprint
A travel journal built around an interactive map of the world.


- Type
- Consumer web app
- Role
- Solo: product, design, engineering
- Year
- 2025
- Stack
- Next.js, TypeScript, Firebase, Three.js, Tailwind CSS, IndexedDB
Overview
My Travel Footprint lets travellers mark the countries they've been to, organise photos by place and follow friends' trips. I designed and built all of it, with most of the engineering effort going into caching and a data model that holds up at photo-library scale.
What I built
- 01Interactive world map covering 195+ countries, with photo management and a social layer.
- 02Multi-layer cache (in-memory LRU, IndexedDB, Firestore) with targeted invalidation: 60% faster loads and 80% fewer database reads.
- 03Flat Firestore schema with compound indexes and photo-aggregation services designed to scale to millions of photos.
- 04Follows, likes, activity feeds and privacy controls, driven by events that keep caches in sync automatically.
- 05Three.js visualisation, Firebase Auth and Storage, and PWA support with a mobile-first layout.