Maly-Dunaj.sk
Comprehensive Digital Guide for Paddlers
My Role
Lead Full-Stack Developer & Architect
Project Scope
Mobile App (iOS/Android), Web Portal, Admin System, Cloud Backend
Maly-Dunaj.sk is a modern digital platform designed specifically for paddlers and tourists on the Little Danube river. The goal was to create the ultimate "smart" guide solving real-world challenges on the water—from safe navigation and logistical planning, to off-grid availability in nature without cellular signal. It is not just an informational app, but a complex tool with sophisticated business logic built for demanding terrain.
Technology Stack (Modern & Scalable Ecosystem)
The project is built on a Serverless architecture, divided into three client applications communicating with a unified cloud.
1. Mobile Application (Native Performance)
Focused on 100% reliability in the field, GPS tracking, and smooth operation on the water.
- Framework: Flutter (Dart) for native performance (60fps) on both iOS & Android from a single codebase.
- State Management: Riverpod (+ Freezed) for robust, predictable state management of local and async data.
- Map Technologies:
flutter_mapintegrated with custom PMTiles (Vector Map Tiles) for highly compressed offline spatial data. This achieves extremely low storage and battery footprint. - Local Database: Isar (NoSQL) for lightning-fast caching of routes and POIs, guaranteeing offline operation without network latency.
- Background Services:
geolocatorandflutter_background_servicefor continuous, isolated GPS tracking even when the phone is locked. - Design: Custom "River Design System" – Glassmorphism panels and Neon-glow effects reacting to Dark Mode ("Neon River").
2. B2C Web & B2B Admin System
Focused on load speed, perfect SEO, and rapid content management from any device.
- Web Frontend: Powered by Next.js 16 (React 19) for unmatched SSR and top-tier SEO parameters. Styling via Tailwind CSS v4 and Radix UI. Interactive vector maps use Maplibre GL JS and PMTiles.
- Admin System: A high-performance SPA running on React + Vite. Headless CMS approach with Tiptap Rich-Text editor and DnD-kit for intuitive drag & drop management of POIs and events.
3. Cloud Backend & Architecture (Firebase)
- BaaS: Firebase ecosystem, safely managed via complex Security Rules protecting user data.
- Database: Cloud Firestore – strictly optimized for geospatial read/write queries.
- Microservices: Cloud Functions (Node.js) acting as secure middleware, automatically assimilating hydrological data (water levels, weather) from external APIs in the background.
Key Platform Features
1. 3D River Navigation & Interactive Map
Unlike standard Google Maps, this app features a fully customized vector map ("Dark River" style optimized for outdoor sunlight) that highlights the exact riverbed. It calculates live dashboard metrics based on the river's actual current.
2. Advanced Paddler Routing Algorithm
Instead of primitive straight-line distances, the app dynamically measures river meander profiles. It estimates physical paddling time and factors in exact weather forecasts and water level predictions for the scheduled day.
3. Reliable Background Tracking & History
Tracking runs fluidly in the background, generating high-precision vectors and creating statistical breakdowns: speed curves, rest times at river buffets, total water time, and an interactive memory gallery of visited points.
4. Critical Offline Mode-First Approach
Usability cannot drop when losing cellular signal. The entire mobile client embraces a "Local-first" paradigm. Map visuals and navigational waypoints (villages, watermills) are dynamically cached locally.
5. Intelligent Warning System
Safety first: Integration of proactive Real-Time push notifications powered by community and editorial warnings regarding blocked segments or sudden weather breaks.
Technical Challenges & Achievements
The biggest developmental challenge involved overriding standard road-based distance logic for true maritime routing. It required designing custom spatial integration logic utilizing Turf.js ports to measure routes against river polygons and curves, mapping a true canoe experience where car paths equal zero.
Another massive engineering milestone was strict memory management surrounding Flutter's Isolates for Background Processing. The location tracking runs flawlessly without being killed by aggressive mobile OS background optimization layers—lasting from departure to arrival without severely draining device battery in hot sunlight.











