Find any article in my blog
In this blog I talk about all things Apple and Swift development but my main area of focus is on tooling and automation.
Learn how you can provide different content or functionality when clicking on a menu bar item with a modifier key pressed in macOS apps using both AppKit and SwiftUI.
Learn how the Observation module's withObservationTracking function works and how you can use it to observe changes of an @Observable object from anywhere in your codebase.
Learn how you can interrupt the app's termination and change your app's activation policy to keep the menu bar item running after the app has been quit.
Learn how to use StoreKit's AppTransaction API to change your app's business model from a paid app to freemium.
Learn how you can create App Store optimized stunning screenshots and app previews with RocketSim and use Helm to upload screenshots to App Store Connect.
How to leverae the power of the GitHub CLI from GitHub Actions to automate tasks such as issue management or pull request creation.
How to fully automate the process of code signing your Apple apps using fastlane match to keep your signing certificates and provisioning profiles in sync across your team.
How to make sure your Xcode project's build and version numbers are always up-to-date using Fastlane.
A guide on how you can use expedited app reviews in exceptional circumstances to get your app reviewed faster than normal on the App Store.
How to manage versions of Ruby and install Ruby Gems such as Fastlane both locally and in your CI/CD pipelines using GitHub Actions.
A comparison between ObservableObject and the new Observable macro and how to listen and react to property changes in both.
Core Data and Swift Data model objects can't be shared across different threads and doing so can result in data corruption and crashes. In this article, I will show you how to set up a fully thread-safe Core Data and Swift Data stack that performs all operations in the background.