PickMe Jul 29, 2025

Revamping PickMe Driver App: From UIKit to SwiftUI — A Technical Journey

Article Summary

Kcrdissanayake from PickMe reveals how their team migrated an 8-year-old ride-hailing driver app from UIKit to SwiftUI while maintaining iOS 15 compatibility. The bold rewrite wasn't just about modern code—it was about solving real business problems like drivers force-quitting to avoid card payments.

PickMe's iOS team rebuilt their driver application from scratch using SwiftUI, replacing a legacy UIKit codebase that had accumulated significant technical debt. With 7 developers working simultaneously and thousands of drivers relying on iOS 15 devices, the team needed creative solutions to balance modern development practices with backward compatibility requirements.

Key Takeaways

Critical Insight

The migration delivered faster development cycles, better code maintainability, and solved critical business problems like driver app abuse through SwiftUI's modern architecture.

Their hybrid approach using SwiftUI Introspect bridges the gap between frameworks in ways most teams haven't considered yet.

About This Article

Problem

PickMe's driver app didn't have modern UI/UX features like dark mode or adaptive theming. Drivers working night shifts struggled with eye strain and poor visibility.

Solution

The team built an adaptive theme system that detects the device's system settings automatically. Drivers can also switch themes manually, and colors adjust dynamically across maps, forms, and other UI elements using SwiftUI's native theming.

Impact

Dark mode on OLED devices saves battery during long driving sessions and makes the app easier to see at night. This reduces driver fatigue and makes the app work better in different lighting conditions.