ConXion

ConXion — is a startup, the main aim of which is to make the life of travelers and people who spend most of their life on the road easier.

The idea of the service is splitting the taxi expenses from the airport between fellow travelers found through it.

Our team had a task to develop an app for Android, which will meet the following requirements:

To be intuitive

To have a bright and attractive design

To be convenient to use on the go, when a user hurries up, which is characteristic of airports

Registration and Authorization

Our team has implemented an extremely simple registration form, which includes only the most necessary elements.

Since one of the app peculiarities is searching the fellow-travelers by language criteria, we have created several fields for user language choice.

Fellow-travelers search

After the registration in the app, the user has an opportunity to immediately start the search of the fellow-travelers, indicating just the destination and the number of people accompanying him or her.

The search is realized among the people, who have the app installed and are at a certain distance from the user, which can be indicated in the settings (2 km by default).

The user can see all the other users nearby, who meet the necessary parameters, in the search results. We have also added the opportunity to look a certain user profile through, in which the user photos, nationality, and languages are presented.

After the user has chosen the fellow-traveler, he can send him a request. The number of requests is not limited, so several conversations can be started.

Chat

If the fellow-traveler answers the request the dialogue is started, in which the users can discuss all the questions, which interest them and make arrangements as to the place of meeting to find a taxi to their destination together.

All the chats are arranged in a separate tab of the interface, on which notifications about the new messages are shown.

In case the fellow-passenger does not suit the user, there is an opportunity to reject the request.

User Profile

Besides the other features, we have implemented a flexible functionality of the interaction with the user profile. It allows to quickly upload the new photos and change the other information.

Technical implementation

When planning the development our main aim was to fulfill the project in the shortest possible time and with a minimal budget.
That’s why we have decided to use Firebase BaaS (Backend-as-a-service). The Firebase Realtime DB was used as a database. Such an approach perfectly fits small projects, since it allows to create backend without complicated API development. More than that Firebase Realtime DB allowed us to provide content updates in real time without using Socket or Push Notifications. It is beneficial to the application stability as well as to the overall cost of development.

We always try to go with the tides, that’s why Android app is written in Kotlin, a modern programming language. The application architecture meets all the principles of Clean Architecture, as well as MVVM due to Android Architecture Components. It provides flexibility in the process of development and saves time, whenever it’s necessary to change the design or business logic of the app.

For UI realization of the part of the chat between the fellow-travelers, we used our own Android Library — ChatKit. It allowed us to save much of the client’s budget and time for development.

Animation

We realized the animated version of the logo for loading screen and implemented it into the app with the help of Lottie libraries.