Wszystkie realizacje

Mobile / mapy i GIS

Moto-Azymut - planer tras motocyklowych

Otwarty planer i nawigacja tras motocyklowych na danych OpenStreetMap: kręte drogi, generator pętli, nawigacja offline i jazda w grupie - bez kont i telemetrii.

linii kodu
~50k
zamknięte fazy
0-6

Dla kogo

Motocykliści szukający krętych tras oraz osoby, które chcą uruchomić własną instancję - bez kont i bez telemetrii.

Problem

Dostępne narzędzia rozwiązują tylko połowę problemu: jedne dobrze liczą kręte trasy, ale są zamknięte, inne mają świetny tryb offline, w którym planowanie pod motocykl jest wtórne. Brakowało planera, który łączy jedno z drugim i działa bez zasięgu.

Zakres prac

Silnik tras działający offline, profile jazdy pod motocykl, generator pętli, nawigacja z polskim TTS, tryb grupowy, pipeline danych z OpenStreetMap i stack do samodzielnego hostowania.

Rozwiązanie

Aplikacja we Flutterze oparta na czystym pakiecie domenowym bez zależności produkcyjnych. Offline trasy liczy Valhalla wkompilowana natywnie i wołana przez dart:ffi w osobnym izolacie, online - GraphHopper w trybie flexible z własnymi modelami kosztu. Mapy to PMTiles czytane bezpośrednio, bez serwera kafelków. Indeks krętości dróg i geokoder powstają w SQLite z tego samego pliku OSM. Jazda w grupie działa po MQTT z dołączaniem przez kod QR, bez kont i bez zapisywania pozycji. Opcjonalna warstwa LLM pozwala planować trasę językiem naturalnym, ale model nie generuje geometrii - współrzędne pochodzą wyłącznie z OSM i geokodera.

Kluczowe funkcje

  • Wyznaczanie tras bez zasięgu (Valhalla przez dart:ffi)
  • Profile pod kręte drogi i szutry
  • Generator pętli z punktu startowego
  • Nawigacja głosowa po polsku
  • Jazda w grupie przez MQTT z dołączaniem kodem QR
  • Import GPX, biblioteka tras i nagrywanie śladów

Efekt biznesowy

Zamknięte fazy 0-6: trasa liczy się bez zasięgu, działa tryb grupowy, biblioteka tras, import GPX i nagrywanie śladów. Około 50 tys. linii kodu, CI ze smoke testem na prawdziwych danych OpenStreetMap. Projekt open source, przed pierwszą trasą w terenie.

Technologie

FlutterDart FFIValhallaGraphHopperOpenStreetMapPMTilesSQLitePythonDockerMQTTLLM