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.

Configuring UI tests with launch arguments

Launch arguments provide a way to configure the behaviour of an app before running UI tests

Swift async/await in AWS lambdas

Exploring the new Swift AWS lambda runtime API and how it enables the use of async/await.

Collecting GitHub Action workflow metrics using Swift

Creating a command line tool using Swift and async/await to collect metrics on GitHub Action workflows.

Testing your release pipeline using Fastlane

Some processes, such as a release pipeline, are very important but do not get run frequently. In this article, I go through how scheduled CI runs can help you spot failures early and gain confidence in your important and infrequent processes, such as release pipelines.

A menu bar only macOS app using AppKit

How to setup a menu bar only macOS app using AppKit.

Platform specific code in Swift Packages

A set of examples showing how useful compiler directives can become when building cross-platform Swift programs.

Handling multiple git SSH keys

A whistle stop tour through my git configuration, showing how to effectively deal with two different git users and SSH keys.

Sourcery Swift Package command plugin

Building a command plugin to execute Sourcery from scratch and explaining the challenges faced while doing so.

My new Swift Package: ReadingTime

In this article I briefly introduce my new open source Swift Package called ReadingTime. It allows clients to get an estimate reading time from markdown text.

From NSRegularExpression to SwiftRegex

An example of the new SwiftRegex API by refactoring code using NSRegularExpression using the new RegexBuilder framework.

Advances in Swift Package Manager's dependency access control

Taking a look at the latest Swift 5.7 development snapshot to try the new explicit-target-dependency-import-check flag, which provides improvements to the dependency system within SPM.

Localising a modularised application

A few tips that work for me when I need to localise a modular application.