Think & Build


VIPER-S: writing your own architecture to understand its importance (part 2)

In the previous article we introduced VIPER-S, with an overview of its Domains and Roles, we organized our modules with folders and we started writing the contract for the “ItemsList” module. With this new article we’ll complete the architecture by implementing the Actors. An Actor is the entity responsible for the implementation of all the [...]


VIPER-S: writing your own architecture to understand its importance (part 1)

After some months using VIPER for my apps, I started working on my own architecture: I wanted to create something better for my own needs. I then started sharing thoughts with my colleague Marco. He is on the Android side of things, but we needed to discuss to find common ground and both get to [...]


Custom Controls: button action with confirmation through 3D Touch

3D touch is the ability to track user’s touch pressure level and, in my opinion, is one of the most interesting and unexploited feature of iOS touch handling system. With this tutorial we are going to build a custom button that leverages on 3D touch to ask user to confirm button action and, if 3D [...]


Implementing the Twitter iOS App UI (Update: Swift 3)

After using Twitter’s iOS App for a while, I started looking at it with the developer’s eye and noticed that some of the subtle movements and component interactions are extremely interesting. This sparked my curiosity: how did you guys at Twitter do it? More specifically, let’s talk about the profile view: isn’t it elegant? It [...]


Quick Guide: Animations with UIViewPropertyAnimator

With iOS 10 came a bunch of new interesting features, like the UIViewPropertyAnimator, a brand new class that improves animation handling. The view property animator completely changes the flow that we are used to, adding a finer control over the animations logic. A simple animation Let’s see how to build a simple animation to change [...]