Project background
Overview
The client needed a navigation app development, including detailed maps, real-time directions, and Points of Interest (POI) exploration. Initially created using KendoUI and jQuery, the app required a full rewrite using AngularJS and Cordova to modernize its architecture and adhere to Google Material Design standards. We also initiated the transition to Kotlin for native Android development.
The Maps, Navigation & Directions app supports various user scenarios, from selecting the fastest routes to exploring nearby attractions. With over 1 million downloads on Google Play, it integrates advanced mapping and location-based services using APIs like Google Maps and OpenStreetMap.
Project goals
- Provide users with comprehensive map-based navigation, POI recommendations, and multilingual support.
- Incorporate advanced features like sightseeing, real-time weather, and localized events.
- Mobileapp
- 4team members
- 1000+hours spent
- Navigationdomain
Challenges
- Rewriting the app from KendoUI to AngularJS and migrating to Kotlin required architectural changes while maintaining existing functionality.
- Integrating multiple APIs, including Google Maps and OpenStreetMap, posed challenges for performance and consistency.
- Implementing live updates for train schedules and alternative navigation routes demanded extensive testing.
- Overcoming CSS animation issues in Android WebView to ensure a smooth user experience.
Our approach
Solution
We rewrote the Maps, Navigation & Directions app from the ground up using AngularJS and Cordova. It helped to align them with Google Material Design standards. To enhance the functionality, we integrated plugins like cordova-plugin-speechrecognition for voice commands and Firebase for analytics. POI features were developed using Google Places and Sygic APIs, enabling users to explore nearby locations effortlessly.
We approached the project with a focus on transforming a previously limited tool into a comprehensive travel assistant. The first step involved migrating the application from the outdated KendoUI and JQuery stack to AngularJS with Angular Material for a modernized and responsive interface. This significantly improved the user experience and aligned the app with Google Material Design guidelines.
To enhance functionality, we integrated Google Maps API and OpenStreetMap with multi-route navigation, point-of-interest discovery, and real-time travel updates. Nearby places were categorized using Google Places API, ensuring that users could easily find and explore food, lodging, shopping, and entertainment options. For deeper content, we utilized Sygic, Wikipedia, and Geonames APIs, providing rich details about landmarks and activities.
Our team enhanced the navigation app development by adding innovative plugins, such as speech recognition powered by Google Speech API and analytics tools through Firebase, to further expand the app’s capabilities. We overcame technical and performance challenges and added smooth animations in the UI, by implementing creative workarounds to address the limitations of Android WebView.
After completing the Cordova version of the app, we began transitioning the project to Kotlin. This phase focused on creating a robust navigator with plans to expand its features, mirroring the functionality of the Cordova app. Although the Kotlin development was paused due to client decisions, the groundwork for a modern and scalable platform was established.
Team
The team included one Project Manager to coordinate and oversee the development process, one Tech Lead to guide architectural decisions and tackle complex challenges, one Developer responsible for implementing features and functionality, and one QA Engineer dedicated to testing and ensuring the app’s quality across various devices. This compact team worked effectively to deliver a high-quality product within tight deadlines.
Results
The navigation app development process resulted in an intuitive and feature-rich travel companion for its users. The integration of advanced APIs and modern frameworks provided a seamless navigation experience, complete with real-time updates and extensive place details. Improved user interface, compliant with Material Design principles, ensured accessibility and ease of use across devices.
With the implementation of plugins for speech recognition and analytics, the app gained enhanced interactivity and valuable insights into user behavior. The project’s transition to Kotlin laid a strong foundation for future scalability, aligning with the client’s long-term vision. The app has been successfully published on Google Play, reaching over 1 million downloads and earning positive feedback for its comprehensive functionality and user-friendly design.
Valeriia Bystrova
Experienced IT consultant and lead generation manager. Created dozens of compelling case studies and blog posts related to software development services.