NearbyRoutes
Find walking and cycling routes near your location with smart filtering.
The Concept
You're in a new city (or bored in your own) and want to find interesting places nearby -- a park, a viewpoint, a good coffee spot. Google Maps shows you a list. NearbyRoutes shows you a route that connects them.
The app finds attractions, cafes, parks, and shops near your location and builds walking routes between them, displayed on an interactive map with turn-by-turn directions.
Architecture
NearbyRoutes is a native Android app built with Kotlin and Jetpack Compose.
Place Discovery
The app queries multiple APIs to find interesting places nearby:
- •Overpass API -- queries OpenStreetMap for tagged places (cafes, parks, viewpoints, shops)
- •OpenTripMap API -- curated tourist attractions and points of interest
- •Yandex Places API -- additional local business data
Results are deduplicated and categorized into groups: attractions, food & drink, nature, shopping, and more.
Map & Routing
Places are displayed on a Yandex MapKit map. When you select a destination, the app calculates a walking route using Yandex's routing engine and displays it with turn-by-turn directions.
Configurable Search
A settings screen lets you adjust:
- •Search radius -- from 1 km to 15 km
- •Place categories -- filter what types of places to show
- •Transportation mode -- walking or cycling
Tech Stack
- •Kotlin -- Android native
- •Jetpack Compose -- declarative UI with Material 3
- •Yandex MapKit -- map rendering, search, and routing
- •Retrofit -- HTTP client for API calls
- •DataStore -- persistent settings
- •Play Services Location -- Fused Location Provider for GPS
- •Coil -- image loading for place photos
- •Overpass, OpenTripMap, Nominatim, OSRM -- open data and routing APIs
Design
The UI follows Material 3 guidelines with a clean, map-centric layout. The bottom sheet pattern shows place details without leaving the map view. Animations and transitions make the experience feel fluid.