Link Logo
Subscription Based Delivery App For Link
Revolutionizing on-demand services with a combination of subscription based models and cutting-edge technology.
Client
Client
Link
Timeline
Timeline
6 months
Industry
Industry
On-demand booking
Location
Location
Kuwait
Project
Project
Design and development
Year
Year
2020
  1. Strategy

    We collaborated with Link to transform the on-demand services that their company offers using cutting-edge technologies over a project that lasted for a period of six months.

    1
  2. Analysis Planning

    Considering the requirement was to build both mobile and web versions of the app, we finalised on Flutter and React as the frameworks to develop the Frontend respectively while using MobX and Redux for the Backend.

    2
  3. UI/UX

    The UI/UX process was the first phase of the project where designs were implemented for the database along with a common codebase for dependencies.

    3
  4. Development

    The project involved the creation of many features such as one to plans on the app for business owners as well as order tracking for customers alongside other elements like purchase, available subscription plans, pickup/delivery, completed order etc.

    4
  5. Testing

    The development of the app also included a rigorous testing process at the end of each sprint while also creating a CI/CD pipeline to keep the client in loop.

    5
  6. Delivery

    The end product of the project was a beautiful app for on-demand services which provides a superior experience to users by integrating features such as live, tracking, an advanced dashboard, etc.

    6
About the Client

With the onset of on-demand booking facilities, another up-and-coming company wanted to contribute to enabling ease of access of services and goods to the people, but with a twist. Their version of on-demand service booking would include all essential services on a subscription basis, which would lighten the burden on the user to re-book services as required and rather have a subscription.

The Problem

In September, 2019, a simple Google Search for the best Flutter Developers led the client to our doorstep. The requirement was fairly straightforward, a dedicated team for full-stack development of the platform as an app and an admin dashboard. The app was to feature a catalogue of services that users can avail including taxis, groceries, essentials on a daily, weekly, monthly or yearly subscription.

In September, 2019, a simple Google Search for the best Flutter Developers led the client to our doorstep. The requirement was fairly straightforward, a dedicated team for full-stack development of the platform as an app and an admin dashboard. The app was to feature a catalogue of services that users can avail including taxis, groceries, essentials on a daily, weekly, monthly or yearly subscription.

Team On-Call

This project was considerably large. Since it required a mobile and a web dashboard, plus a website for the client as well, we needed a well rounded team that could tackle all these different fields of development with minimum overhead. As designs for the app were already provided to us by the client, the design team was only required to oversee and suggest changes to design schemes, if any (with the permission of the client, of course). We handpicked the people who could deliver the best of both worlds and zeroed upon a team of two mobile app developers, two web developers and one QA engineer, led by Project Lead and architect, Amith MS.

Requirements

A fully-functional mobile app for users and service providers & admin dashboard for moderators to manage the platform.

The primary feature was to be a school bus subscription service module for schools and parents.

A planner and order tracking feature for all users.

Efficient data management & live map tracking.

Development

Given the extensiveness of the project requirement and the time frame, the complete scope of work was divided into three major deliverables: mobile app, web app & dashboard. On the technology front, Flutter was suggested as the best choice for the development of mobile apps, with MobX as the preferred State Management tool. For the web app, the most stable and reliable choice was React, with Redux for State Management & Google's Firestore was the obvious choice for the database. Flutter web was another choice of framework for the web app that we considered to keep the tech stack uniform throughout but the choice was done away with because of the fact that React is far more stable than Flutter Web at the moment.


Link

With the tech stack decided and the team ready to go, it was time to kick things off in full gear. The mobile app was to have three distinct modules which were divided into three separate apps. Considering the school bus subscription service, on request of the client, a user view, a bus driver view, and a school/business view were all to be built as three standalone apps. Keeping this in mind, the first job to complete was to set up the entire project and chart out the dependencies. For this, the entire process was divided into 5 distinct milestones. The first milestone included designing the database, creating a common codebase for all different apps to build on & implementing authentication. The common codebase was created using Flutter and the database was tackled by Firestore, along with the web app being built in React & Redux. Within the first 3 weeks, the first milestone was completed.

The next step was to implement the numerous features within the applications. The most important feature was the ability to create plans on the app as a business owner and order tracking. This was a feature that was specifically implemented in the business owner version of the app. The next obvious feature to implement was for users to be able to purchase available subscription plans and then the executive/driver view of the app with all necessary features such as next pickup/delivery completed orders et cetera.GCM was used to deliver push notifications & Google Maps was used to handle the live tracking system. All these features were implemented and delivered in the subsequent milestones within the stipulated time.

Alongside development, a constant QA process was in place. With every feature that was built, the QA engineer rigorously tested it under all conceivable circumstances and platforms, reporting any issues that arose and getting things in working order. The client was constantly communicated with through Slack, emails and Skype calls to maintain transparency and a constant update channel. A CI/CD environment was set up to deliver builds to the client and a lot of stress was given to UAT (User Acceptance Testing) in each milestone, where the client would test the app as a user and report any issues or feedback.

Overcoming Challenges

As dense as this project was, the team was bound to face some challenges during the course of the project. One of the major challenges came in the form of implementing a payment gateway. Due to restrictions, Tap was the only payment gateway that could be implemented. Tap does not have an SDK that can be used for payment, which posed as a roadblock. It goes without saying that the team rose up to the occasion and built their own MethodChannels to make the app compatible with Tap and implemented it.

Another major challenge was to implement Live Tracking with Google Maps. It was imperative that as the location of the executive changes on the map, the route is recalculated between the executive and the destination on the user and business app. As big as a roadblock this could be, the team managed to overcome it and implement accurate location updates on all relevant views in real-time.

In bird's eye view
  • Git was used for version control.
  • The client was constantly communicated with using Slack, Google Meet & Emails.
  • CodeMagic was the choice of tool for deployment.
Final Impression

The scope of the project and the duration it went on for was daunting, but at the end, the client was impressed by the punctuality of our team and the quality of work that was delivered. The client also applauded the attention to detail that the team has displayed. True professionalism was at display here all throughout the project and the quality of work has led to a lasting partnership between us and the client, which is evident by the fact that they have honoured us by collaborating again on another project. We are happy to serve another satisfied customer and present another quality product from our studio.