Hi, I'm Sarun — an iOS developer.
On this blog I share my working processes, tip and tricks, tools,
and problems I found along the way.
On this blog I share my working processes, tip and tricks, tools,
and problems I found along the way.
Setting background color in SwiftUI is not as straightforward as UIKit. Let's learn how to do it.
Learn how to fit an image view to any container.
In UIKit, we have various ways to control an image's position and behavior in UIImageView with a help contentMode property. In SwiftUI, we only have fit and fill content mode. Let's see how we can replicate the rest.
Learn how to fit an image view to any container.
In UIKit, we have various ways to control an image's position and behavior in UIImageView with a help contentMode property. In SwiftUI, we only have fit and fill content mode. Let's see how we can replicate the rest.
Learn how hard or easy it is to add a background view in SwiftUI.
SwiftUI doesn't have a built-in way to preview for a device in landscape orientation at the moment, but we can simulate that with a few modifiers.
Learn how to fit image view to any container by changing Content Hugging Priority and Content Resistance Priority.
Learn a lesser-known API to create a custom UIStackView spacing without nested them together.
Font is an essential part of an app. A good selection of font would make your app stand out from the crowd. But whatever fonts you choose, you have to make sure it doesn't lose its core function, readability. You might feel reluctant to use a custom font in the past because you might lose the benefit of dynamic type goodness that Apple provides with their system font. Since iOS 11, this is no longer the case. You can easily use your custom font dynamic type.
An easy question that you might overlook. Learn this simple fact together in this article.
Learn how to overload existing operators such as +, -, *, / or create a custom one (such as .^.).
Learn how to check if a string contains another string, numbers, uppercased/lowercased string, or special characters.
String comparison is an essential operation for day to day job. Swift provides a few variations for this. We will visit them in this article.
A brief summary of init and scaffold commands.
Learn how the scaffold command helps you to bootstrap new components or features such as a new VIPER module or a new framework for your new feature.
Learn how to use, and limitations of tuist init, a command that bootstrap a new project.
The template is a way to group repetitive code structure into a reusable component. You will learn how to create them in this article.
Turn your code into a snapshot.
A step by step guide to implement Sign in with Apple.
SwiftUI cheat sheet
A more work-friendly mirror for Fucking SwiftUI
Icon resizer
A programming picture book covers a topic on many aspect of UITableView. This is a fun small project I did long time ago.
I got some apps in the App store, you can check it out.