CLIENTFlutterRiverpodOSRMiOS + AndroidLIVE ON BOTH STORES

Trevola — Route Generator

A travel app that generates a real, navigable route of an exact distance inside the countries you pick — powered by a custom OSRM pathfinding pipeline, with interactive maps, trip planning, friends and group chat. Live on iOS and Google Play.

Trevola — Travel routes
App screen
App screen
ROLE
Flutter Developer
DURATION
Full app build
PLATFORM
iOS & Android
STATUS
Live on both stores
01 — Challenge

Anyone can draw a line on a map. Generating a real, navigable route of an exact distance inside a country's borders is a genuine algorithmic problem.

Trevola lets a user ask for, say, a 50 km cycling route inside chosen countries — and get back a real road-and-path route they can actually follow. That needs real geography, real routing, and an optimisation loop that lands within tolerance of the target distance.

The task: build the whole product in Flutter — the route-generation engine, an interactive OpenStreetMap experience with draggable markers, plus trip planning, friend invites and group chat — and ship it to both stores.

02 — Process
PHASE 01

Geography & projection

Loaded real Natural Earth country boundaries and validated points with a ray-casting point-in-polygon test, then projected target endpoints with the Haversine destination formula at a random bearing.

PHASE 02

OSRM routing & optimisation

Fed start/end points to OSRM (foot, bicycle, driving) for real routes, then ran an iterative optimisation loop — up to 20 attempts — that lengthens or shortens the path with a coefficient method until it lands within tolerance of the requested distance, streaming live progress to the UI.

PHASE 03

Map, planning & social

Built the interactive FlutterMap with draggable start/end markers that recalculate on drop, then layered on saved trips, per-day itineraries with weather, friend invites, participants, and realtime group chat — shipped to iOS and Google Play.

03 — Screens
Route generation — pick a distance, countries and vehicle; get a real OSRM route on the map
Route generation — pick a distance, countries and vehicle; get a real OSRM route on the map
Saved travels — every generated route, organised and ready to plan
Saved travels — every generated route, organised and ready to plan
Trip planning — dates, a packing list, and a per-day itinerary with weather
Trip planning — dates, a packing list, and a per-day itinerary with weather
Participants — invite friends by email and manage who's joining
Participants — invite friends by email and manage who's joining
Group chat — coordinate the whole trip with everyone in one place
Group chat — coordinate the whole trip with everyone in one place
04 — Features
ALGORITHM
Exact-distance routing
A custom pipeline — Haversine projection, OSRM routing, and an iterative optimisation loop — returns a real, navigable route within tolerance of the distance you ask for, from 1 to 500 km.
MAP
Interactive OpenStreetMap
FlutterMap with draggable start and end markers that re-route in real time, live distance and travel-time overlays, and current-location support.
PLANNING
Full trip planner
Dates, packing checklists, and per-day plans with live weather — all auto-saved to a FastAPI backend so nothing is lost.
SOCIAL
Plan together
Invite friends by email, manage participants and invitations, and coordinate the trip in a realtime group chat.
05 — Results
OSRM
Pathfinding engine
1–500km
Route range
3
Travel modes
Live
iOS & Google Play
NEXT PROJECT
FLUTTER · RIVERPOD · IOS + ANDROID
Leisure Quiz
A full exam-prep quiz app — quiz engine, stats, achievements, offline sync. Live on both stores.
↗