Two native iOS apps for an on-demand goods transport platform
An unfinished Objective-C rewrite, rebuilt in SwiftUI as a customer app and a driver app on the App Store.
- Client
- BookCargo
- Category
- Mobile Application
- Our scope
- iOS development of both apps, the customer app and the driver app. The apps run against BookCargo's existing backend.
One trip, two apps
- Customer app01
Request
Book a vehicle with a fare estimate, now or scheduled.
- Driver app02
Accept
Nearby booking requests arrive in real time.
- Both apps03
Track
Live trip tracking, OTP-verified rides and in-app chat.
- Both apps04
Pay
In-app payments for the customer, earnings reports for the driver.
The problem
BookCargo is an on-demand service for moving goods, couriering parcels and shifting house. An Objective-C rewrite of its iOS app had been left partway through development and was never released. To move forward, it needed to become a modern, maintainable product with the payments and in-app chat the business required.
Our approach
We rebuilt the apps in SwiftUI instead of patching the old Objective-C code, working against BookCargo's existing backend. Delivery ran in milestones, with TestFlight builds and rounds of client feedback, and the driver app was built as the second half of the same trip lifecycle.
What we built
Two apps that cover a trip from request to payment: a customer app for booking and tracking, and a driver app for accepting and completing trips. On top of the original scope we added in-app payments and real-time chat between customer and driver.
Two apps, one trip.
For people and businesses booking a vehicle
BookCargo, the customer app
Book a vehicle to move goods, send a courier package or shift house in a few taps.
- Fare estimates and scheduled bookings
- Real-time trip tracking and OTP-verified rides
- Wallet, coupons and multiple payment options
- In-app chat with the driver
- Saved favourite locations
- Invite-and-earn referrals
For registered BookCargo drivers
BookCargo Pilot, the driver app
Receive bookings from nearby locations and run each trip without having to search for customers.
- Driver onboarding with document verification
- Nearby booking requests with real-time updates
- In-app chat with the customer
- Earnings, weekly reports and trip summaries
- Bank account and cash-receipt handling
- Invite-and-earn referrals
Outcome
The half-finished Objective-C rewrite became two complete SwiftUI apps, with payments and chat added. Both are on the App Store as BookCargo and BookCargo Pilot.
Have something like this in mind?
Tell us what you're building. We'll walk you through how we'd approach it.







