Revolut Aug 17, 2022

iOS Screen Navigation Engine at Revolut

Article Summary

Vincent Berihuete from Revolut reveals how they ditched traditional iOS navigation patterns for something far more powerful. Forget Coordinators—this is about building a custom navigation engine that eliminates code duplication across massive fintech flows.

Revolut's iOS team built a Flow Engine: a state machine-driven navigation system that abstracts screen flows and their dependencies. Instead of copying navigation logic across view controllers, they created reusable flows that handle complex user journeys (like product details with related items and cart actions) in a single, testable abstraction layer.

Key Takeaways

Critical Insight

Revolut's Flow Engine transforms iOS navigation from scattered view controller logic into centralized, testable flows that can be called with a single line of code from anywhere in the app.

The article includes full code samples showing exactly how to build your own Flow Engine backbone and implement it for real-world scenarios.

Recent from Revolut

Related Articles