Conception of a Feature-Driven iOS Architecture

Update: slides which I’ve presented on Swift Ninjas meetup.

Dear iOS friend!

It’s been a couple of years since the iOS community started their attempts to design non-UI driven applications. We can all easily recall approaches like Clean Architecture, Flow Coordinators and Redux — none of them became the standard for one reason or the other, but that doesn’t mean we have to give up!

Our goal isn’t that ambitious. We want to be able to: 
- Build business logic-driven applications in which our UI doesn’t take centre stage, but instead is just a component like any other; 
- Compose features as independent elements to make our architecture change-friendly;
- Define applications in broad strokes, adding details later and dividing complex elements into small chunks only if and when the need arises.

So let’s get started on our next attempt together!

Checkout an example Blog app with Feature-Driven Architecture if you want to learn how to write a readable flow describing features of an iOS app like this: