Colourful Swift logging
Add colour to the output of your Swift commandline tool
This is a personal blog by Matthew Flint.
Add colour to the output of your Swift commandline tool
Tagging a CloudFormation stack with the git revision, and easily reading it back
New radar: Live Activity expanded regions cannot be grouped into a single accessibility element
New radar: Live Activity alerts on Apple Watch Smart Stack are not sorted by relevancy
New radar: Live Activities are a terrific way to view glanceable information, and it would be great if they were also visible in the watchOS Smart Stack.
New radar: Live Activity alerts are displayed on Apple Watch but not on the iPhone home screen. iPhone should show prominent Live Activity alerts if the host app has push notification permissions.
A SwiftUI bottom sheet which is sized to fit its content.
What reachability is, and now it should be used.
By default, USB Copy will only copy one shared folder. Here’s how to copy everything.
How to accurately position a View over a ScrollView or List, using CoordinateSpaces.
It’s a year since we had solar panels and a Tesla Powerwall installed. Here’s how it’s going so far.
Things to watch our for when using custom fonts with SwiftUI.
Not sure if ‘bug’ or ‘feature’, but the LinearProgressViewStyle on iOS doesn’t support an indeterminate animation. So I made one that animates as you’d expect.
A dive into the lifecycle of @StateObject objects, and what causes them to be created and destroyed.
A terrible Swift package for converting HTML into Markdown.
I made a thing, and I can’t wait to see what you do with it.
How to customise the Back button title in SwiftUI, without replacing it completely - because we still want to keep the standard Back button behaviour.
I have a dilemma; the Swift enum is a first-class type and, if we’re to obey the laws of encapsulation, an enum type should own its functionality. But can we do this in a nice way, when its behaviour is different for each value in the enum?
The Coordinator Pattern is rather trendy at the moment. There are some great benefits from using Coordinators, but I can’t help feeling it doesn’t go far enough. I propose that app navigation should be driven by data.
In 2015, I tried to write a mocking framework for Swift. It was over-engineered, difficult to use, and quickly abandoned. This article introduces a much better re-write.
I have a confession to make: I’ve been writing code for 35 years, but still need to count on my fingers when coding an array range-check.
I’ve come to the conclusion that using Swift extensions to make types conform to protocols is rather an anti-pattern. Let me explain why.
Tips for usind NCWidgetProviding protocol and widgetPerformUpdate.
My rules for enums should (and should not) be used.