summary

NaviTaxi - Rider

NaviTaxi is an Uber-like taxi aggregator service startup that aims to provide the safest rides for riders


Website

https://navi.kg/

Category

Transportation

Date

June 2021 - present


Share:

Project Overview

NaviTaxi offers separate mobile apps for passengers and taxi drivers, and the passenger app is built for Android and iOS users. It provides a user-friendly application for ordering taxis of several types: economy, comfort, comfort+, and minivan, instantly showing the total amount for the trip from point A to point B, with the option to pay via cashless ways. 70,000+ people have downloaded the app since it became available on Google Play and the App Store.

Challenges

The main goal of NaviTaxi was to develop a fully automated and digital transportation service that would attract more customers, improve profitability, and streamline the process of ordering a cab in a few clicks. The Reviro team's work ambition was to create multifunctional yet simple-to-use software for Android and iOS that provided cutting-edge features for passengers to order a taxi. The app should have advanced features such as selecting a trip category and immediately presenting the total cost of a trip from point A to point B while allowing for various payment methods.

Solutions

For passengers, NaviTaxi applications provide unique, exclusive benefits. During the first stage of development, we chose to produce the most valuable product (MVP) to control business risks. The MVP allowed the NaviTaxi and Reviro teams to analyze the market and decide which features potential consumers needed the most and how to improve their app experience.

The passenger app development process may be separated into four stages: UI/UX design, Android development, iOS development, and QA testing.

We chose to keep the application's UI/UX design simple but practical, such that everything the user needed was right at their fingertips. Users should easily understand how to order a taxi, the sort of service, how long they will have to wait, how to give a tip, and how to write a review.

Android development was done in the Kotlin programming language, and the project's main architecture is the MVVM (Model-View-ViewModel) architectural pattern. The advantages of Kotlin include tackling more issues with fewer lines of code. This helps our developers to understand and edit the code more effectively, reducing the project's time to market. MVVM allows code to be divided into smaller sections, making debugging easier. The NaviTaxi app for Android is a single-modular project that includes numerous packages such as Base, Data, DI, UI, Services, and Utils.

--

  • Base - a layer of abstract classes that serve as templates for other Android components and additional classes.

  • Data - layer, which contains the application data and the business logic. The business logic provides the application its value, including actual business rules that define application data production, storage, and modification.

  • DI - layer where the dependency creation modules are located.

  • UI - the user interfaces layer package that contains the view layer.

  • The user interface is the primary point of interaction with the user and presents the application data on the screen.

  • Utils - a package of static utilities for working with views, maps, etc.

The Kotlin framework Koin was used for dependency injection (DI) and the navigation component in Android Jetpack to offer navigation between fragments ranging from simple button clicks to more complex schemes like app bars and navigation boxes.

The Swift programming language is used for iOS development, while the MVVM design pattern serves as the project's foundation. The application is a single module comprising many packages such as Application, Networking, Storyboards, Features, Base, and Helpers.

  • Base - a layer of abstract classes that serve as templates for other components and helper classes of UIKit.

  • Networking - data-level layer that contains the application data and business logic.

  • Application - layer that includes modules that create dependencies.

  • Features - the user interface package where the view layer is stored.

  • Helpers - a package of static utilities for working with views, maps, etc.

Our QA experts continually test the program to discover inconsistencies, mistakes, redundancies, and bugs and ensure that it functions properly. This procedure is crucial to ensure that the designed product can live and persist for years in the actual world. Manual testing, black box, white box, and grey box testing, unit tests, integration tests, and user interface tests are all used for testing.

Features

The NaviTaxi passenger application has five significant releases, each incorporating numerous basic and advanced functions while considering market characteristics and our passengers' demands.

The earliest versions offered only the fundamental functions required for a full-fledged comfortable taxi trip. After installing the application, the user must be approved by phone to create their profile. They can choose the app's language, activate or disable SMS notifications, and show or hide the phone number from the drivers in the profile.

One of the app's main features is the option to attach a card or top up the client's built-in balance using Visa, Pay24, Umai, and QuickPay for cashless payment.

Before the trip, passengers can choose the trip category from the economy, comfort, or comfort+. The total cost of the trip is presented based on the kind of trip and address.

A built-in chat option may be used to communicate with drivers instead of making irritating phone calls.

The most basic function is the ability to order a taxi with addresses from locations A and B based on the 2GIS map. GPS immediately determines the passenger's location, and if that is where they wish to leave, they need to identify the endpoint. Users can also input several locations or order a cab for someone else.

Users may follow the car's location on the map before the trip and see how long it will take for drivers to reach them. Throughout the trip, passengers can monitor the taxi in real time along the predefined route.

Also, the appropriate payment option may be selected: cash, the customer's online balance, or a connected card.

When a driver accepts an order, the user will receive a message with information on the driver, the arriving car, and the trip costs.

At the end of each trip, the user is given the option to score the trip on a scale of 1 to 5 and to write a remark. This allows NaviTaxi to analyze and enhance the quality of its services.

The next update includes many enhancements that make using the taxi ordering app even more comfortable for passengers.

  • Separate the cost of waiting from the cost of the trip on the receipt We included the number of waiting minutes and the fee for waiting for the receipt at the end of the trip to avoid different misunderstandings between passengers and drivers.

  • News The news menu has a new section where users can stay updated on new features and important news.

  • History of the last ten addresses of trips Because many customers frequently drive to the exact location, this function was created to prevent having to input the precise address every time you order a taxi.

  • The most important feature in this edition is that if a passenger gives a driver a 1 rating that driver will not come to them.

The third release of the NaviTaxi app featured a complete redesign of the applications. The applications are now much easier to use. After confirming the order, the car logos are colored in the actual driver's car colors, making it easier for passengers to find the car.

New "Minivan" fare provides taxi services for large families or business travelers. In terms of functionality, there are three options: economy, comfort, and comfort+.

At this point in development, we ran across an issue: integrating and using 2GIS maps was expensive for NaviTaxi since every entered user address was counted as a request. As a result, our developers decided to build a database of addresses previously requested from 2GIS by the driver or passenger. As a result, only addresses not discovered in the database will be provided as a map query. This strategy has allowed us to minimize the number of queries to the 2GIS map, consequently lowering expenses.

We ran into a similar issue with SMS codes, so we decided to send a code to the user's WhatsApp number upon registering/authorizing them. If there is no account on that number, it is delivered as standard SMS to the user.

Additionally, users now have access to a support center in their accounts where they may submit an appeal for any problem.

The zone of high demand is a new function in the fourth version of the applications. Because of the high demand, the final pricing may vary. This is shown by an icon next to the price.

  • Certain news, as assigned by the administrator, can now be displayed on the main page.

  • Users may get complete information regarding the payment method in the trip details, check and order history.

  • Passengers can attach another bank card to their account to pay without cash.

The app's latest release for NaviTaxi passengers includes even more advanced functionality.

  • When ordering a taxi, users may specify their preferences, such as air conditioning, with a pet, and so on. Also, the user will receive a "You were leaving here" signal, which may be utilized as a starting point for the trip.

  • They may now see complete trip information in the order history, including the driver's name, addresses, rates, and payment options. Users can remove the order from the client's order history.

  • Passengers can tip using a cashless payment method like a card or their client's balance.

  • Passengers will receive push notifications when chat messages are received and the driver accepts the order.

  • In future updates, innovations are also planned to make the most comfortable cab ordering service for passengers.

What we Delivered / Technology Stack

  • UI/UX design
  • Android mobile development
  • IOS mobile development
  • QA testing

Kotlin, Swift, Retrofit, 2GIS map, Glide, Koin, Room, Jetpack, Pin View, Mask, Timber, Espresso, Mockito, Lottie, Cartography, SnapKit, Alomofire, Swinject, Firebase, SideMenuSwift, LGSideMenuController, UIBottomSheet, SDWebImage, JMMaskTextField-Swift, SkyFloatingLabelTextField, KAPinField, MBProgressHUD, Cosmos, Figma

Custom Offer

Businesses in today's world must have mobile applications to succeed in today's world. When it comes to creating Android and iOS mobile apps, you can count on the Reviro team. Reach out to us if you're looking to expand a current company or establish a new one.

Dashboard

You Might Like

View All
TransportationDylan's Movers
FinTechFin
FinTechOkay.kg
View All

Let's Talk

+996 (554) 450-026

hello@reviro.io