SnapTrail
The all-in-one travel app — plan with AI, travel lighter, relive every trip
A travel companion that covers the whole trip: dream it in the Atlas and bucket lists, plan it with Remi the AI travel buddy, travel with expenses, documents and snaps in one place, then relive it as a passport, a scratch map, stats and a shareable route video.
- Client
- Consumer Travel App
- Field
- Consumer Mobile & AI
- Stack
- React Native, TypeScript, Firebase, Gemini, Next.js, RevenueCat, MapLibre

Overview
Ten travel apps, replaced by one
The problem
A single trip is usually spread across an itinerary in Notes, a budget spreadsheet, a group chat arguing about who paid, visa forum tabs, boarding passes lost in email and four thousand unsorted photos. None of it talks to the rest, and none of it is fun to look back on.
What I built
One app that follows the whole trip — dream, plan, go, relive — with Remi, an AI travel buddy, doing the tedious parts. Shipped natively on iOS and Android, with a web client, an admin console and a marketing site on the same Firebase backend.
In motion
The app, in three short reels.
Cut for Instagram and TikTok from screen recordings of the real app, each one built around a single feature and a line people recognise from their own trips.
Meet Remi
Ask where to go, get a day-by-day plan back in minutes.
Travel stats
Days away, distance covered, and where the money actually went.
Digital passport
Design the stamp, pick the ink, stamp every country you land in.
01 — Dream
Dream
Find the places worth going to.
Before there is a trip, there is a list. SnapTrail keeps the places you want to see somewhere they won't get lost.

Atlas
Curated places by category — popular attractions, hidden gems, food — with photos, ratings and fun facts pulled from Google Places.

Bucket lists
Travel and life-goal lists with ready-made templates, from all 82 Philippine provinces to Japan's prefectures, ticked off on a scratch map.
02 — Plan
Plan
From itinerary to the immigration counter.
Planning is where travel apps usually fragment into ten tabs. Here it's one short form, and Remi — the AI travel buddy — does the heavy lifting.

Remi, the AI travel buddy
A chat companion that knows your trips: visa rules for your passport, the best month to go, what to pack. Then it plans the whole trip, day by day.

Trip planner
Where, when, who and what you like. Every stop comes back with a weather forecast and a price per person.

Outfit ideas
A look for every day of the trip, styled to that day's forecast and the colours that suit you.

Visa readiness
Your application graded before the embassy sees it: a readiness score, what's missing, and an AI-drafted cover letter.

Immigration guide
A checklist for the counter and practice for the questions, so first-time travellers walk up prepared.

Helpful apps
The ride-hailing, payment, translation and transit apps to install before you land — listed for every country on your plan.

To-bring list
Pack once, forget nothing. A nudge two days before you fly, and a check on the way home for anything left behind.

Travel vault
Flights, hotels, tickets, insurance and visas, read by AI and filed against the right trip — so the booking is one tap away at the check-in desk, not somewhere in your email.
03 — Go
Go
Capture it, split it, share it.
On the road the app gets out of the way: snaps and notes go in fast, the money stays straight, and the people you meet are a tap away.

Split bills
Every trip has that one friend. Shared expenses in any currency, receipt scanning, running balances and a polite nudge when it's time to pay up.

Scan gallery
Point it at your camera roll after a trip and it finds the photos, sorts them by day and drafts the story — exportable as a PDF.

Talk & polish
Too tired to write captions? Speak in any language; it's transcribed, translated and tidied into a journal entry.

Hangouts
Meetups near you, joinable by group code, so a solo trip can still have plans by 8pm.
04 — Relive
Relive
Trips you'll want to show off.
The payoff. Every trip becomes something to keep and share — a stamp, a map, a number, a recap — which is also what brings people back.

Digital passport
Stamps, visas and landing stickers for every country. Choose a shape and ink, stamp entry or exit, and share the whole passport with a link.

Highlights
A whole year of travel as one aesthetic grid, sent straight to Instagram — no editing apps needed.

Travel map
A scratch map in your pocket, with the share of the world you've seen and every country and continent ticked.

Travel stats
Days away, kilometres travelled and total spend by category, converted across every currency you paid in.

World leaderboard
Points for every new country, city and place. Friendly competition that keeps people logging trips.

Affiliate sharing
Add a shop link to the gear in your packing list and earn when other travellers buy it.

12 themes
Twelve light and dark presets, or a custom theme generated from the colours of your own photo.
The AI layer
Gemini does the tedious parts. The traveller keeps the fun ones.
Every AI feature runs in a Firebase Cloud Function calling Google Gemini through the @google/genai SDK, so prompts, keys and credit checks never ship in the app bundle. Veo generates video, and Gemini’s image model handles outfits.
- Trip planning
- Day-by-day itineraries from a short form or an uploaded document, with forecast and cost per stop.
- Remi chat
- A conversational buddy grounded in the user's own trips, plans and bucket lists.
- Past-trip import
- Reads PDFs, DOCX and notes and rebuilds a finished trip — only from what is written down.
- Visa & immigration
- Readiness scoring, cover letters, denial analysis and practice interviews.
- Receipt scanning
- Turns a photo of a bill into an expense with line items and currency.
- Voice notes
- Transcription, then a polish pass that keeps the traveller's own voice.
- Outfit ideas
- Weather-aware looks, generated with Gemini's image model.
- Document vault
- Pulls dates, booking codes and places out of travel documents to file them by trip.
Hard problems
Four decisions that shaped the build.
- 01
Route Reels, rendered on the phone
A trip becomes a 1080×1920 flyover video that traces roads and flight arcs, set to music. Rendering that on a server costs GPU money; bundling FFmpeg bloats the app. Instead a headless MapLibre GL renderer in a WebView computes the camera path and frames, and native encoders — AVAssetWriter on iOS, MediaCodec on Android — write the video straight to the camera roll.

- 02
Importing past trips without inventing them
Planning a future trip wants enrichment: forecasts, tips, suggestions. Recording a past one must not. Past-trip import got its own pipeline, separate from AI planning: it extracts only places, dates and times written in the documents, uses Google Places just for coordinates, and keeps the paid-for draft in a debounced local store so it survives the app being backgrounded.
- 03
One budget per trip
The app once had three competing ideas of a budget — per stop, per day and per trip — and they disagreed with each other on screen. They were replaced by a single trip budget per currency. Planned costs on upcoming stops roll into actual spending as their dates pass, so the overview always tells one story.
- 04
AI that never spends credits by surprise
Every AI call is metered in credits (90 to the dollar, rounded up) and sold through RevenueCat. Place enrichment used to run on every save and quietly burn credits on routine edits; it now sits behind an explicit opt-in switch, and background top-ups only touch stops the user already enriched.
The website
snaptrail.app sells the trip, not the feature list.
Real places, the app’s own palette and a dotted trail running through the hero. Each section shows one moment of a trip, with an animated demo of the feature underneath. Built with React, Vite and Framer Motion, and pre-rendered so it loads fast from a social link.








Four surfaces
One backend, four ways in.
React Native · iOS & Android
Mobile app
The product. 19 navigation stacks, offline-friendly caching, native modules for video encoding.
Next.js 15
Web app
Mirrors the mobile app screen for screen, on the same Firestore documents and Cloud Functions.
Next.js · Firebase Admin
Admin console
Users, subscriptions, Atlas content, featured entries and remote config for the team.
React · Vite · Framer Motion
Marketing site
snaptrail.app — pre-rendered, with animated demos of every feature.
Launch campaign
Every slide is a real screen.
The Instagram carousels on this page come from the launch campaign. Each is built on screens from the shipping app, so what people saw in their feed is exactly what they got after installing.
Where it started
Version 1 was a travel journal.
SnapTrail launched in September 2024 as a place to keep travel memories: entries, collections, a feed and a map. Two years and four major versions later, it plans, budgets, documents and recaps the whole trip. These are the original App Store screenshots.
Results
- Average rating on Google Play
- 4.7★Average rating on Google Play
- Installs on Google Play
- 1K+Installs on Google Play
- Commits across two years, from v1.0 to v4.2
- 2,100+Commits across two years, from v1.0 to v4.2
- Cloud Functions behind the app, web client and admin
- 35Cloud Functions behind the app, web client and admin
How it's built
- Client
- React Native 0.77 with TypeScript for iOS and Android, plus a Next.js web client that mirrors the app screen for screen
- Backend
- 35 Firebase Cloud Functions in TypeScript: Gemini AI calls, Places lookups, push fan-out, leaderboard scoring and RevenueCat webhooks
- Data
- Cloud Firestore and Storage, cached on-device with TanStack Query persisted to MMKV, Zustand for local drafts
- Services
- Google Gemini and Veo, Google Places and Maps, MapLibre GL, RevenueCat, FCM and Notifee, AdMob, Crashlytics
What shipped
- 01Native iOS and Android app with 20+ features, 12 themes and a custom-photo theme engine
- 02Remi, a Gemini-powered travel buddy that plans day-by-day trips, outfits, visas and immigration prep
- 03On-device Route Reel renderer: MapLibre in a headless WebView feeding AVAssetWriter and MediaCodec
- 04Past-trip import that turns PDFs, DOCX and notes into an editable trip without inventing a single stop
- 05Shared expenses with multi-currency splits, receipt scanning, balances and polite payment nudges
- 06Next.js web app, admin console and marketing site, all on the same Firebase backend
Next project
Screen Therapy→A calm Mac companion that tracks screen time, times your breaks and watches out for your eyes















