This was our team's first experience creating a taxi-ordering app. We realized that a high quality standard had already been set by several popular taxi-services, led by Uber, so we were determined to keep that standard and take responsibility for the implementation part.
We've built some handy tools based on Google Maps SDK for map's viewport management, markers, and animations. The main goal was to implement an independent business-logic layer for tracking ride statuses and notifying the map about car movements and ride completion.
We've done the job on automating branded builds, just like we did with Jump Taxi:
The most interesting part for us was providing the ability for easy UI elements customization (colors of buttons, backgrounds, labels and identics) for each new client.
In order to provide that level of customization, we moved all the customizable elements (including keys, certificates, bundle id, colors, images, etc.) into a separate configuration json file which even non-programmers can edit.
Then, using Fastlane and Gitlab, we configured CI in such a way that we could get N customized builds out of N configuration files. What's useful is that each code update could be integrated into all N apps with a single click.
Jump Client was launched in June 2017 and is currently available on the App Store and Play Market
The guys at Upstarts are real professionals, which is a pretty rare find in this market. When you charge them with your project, you'll get high-quality development and a great final result—exactly what you'd want if you had developed the project yourself.