A step-by-step walk-through converting an existing simple Xcode iOS app into a modular architecture project based on Tuist.io tools

The A-Ha Moment

When I first read about tuist, I felt compelled to give it a try with a simple project I had developed previously to put the ideas presented to the test, run it through its paces and find out if there are any blocking issues that a development team would consider critical when adopting this tool.

I chose a simple project I did a couple of years ago called Pokedex (there are literally thousands of implementations of this) — a very basic 4-screen app as the test subject. It consists of a home screen with 2 buttons (Catch and Backpack), a…


A step-by-step code walkthrough converting an existing app to a modularised app using tuist.

In the previous article I started the process of modularisation by making the Xcode project and workspace be generated by the tuist tool, and refactored the dependencies replacing CocoaPods with SPM or creating a new project. In this article I will go through refactoring out the networking code into a separate module while ensuring that all the automated tests continue working.

Note that this article will only really make sense if you follow each step along the way by looking at the commits in this repo. Clone the project and use SourceTree or similar on the PartTwo_NetworkingRefactor branch. …

Ronan O Ciosoig

iOS Software developer and electronic music fan

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store