Every SF Symbol you reference in Swift is a hand-typed string. These posts are about why that's a maintenance problem — and how to make it a compile-time guarantee instead.
SwiftUI's Image(systemName:) takes a String, so every icon in your app is a hand-typed name with no compiler safety net. Here's why that's a maintenance liability and how to fix...
Read post →Apple doesn't give you a way to enumerate SF Symbols in Swift — because they're strings, and you can't iterate a string you never wrote down. Here's how to get all of them as a ...
Read post →UIImage(systemName:) returns an optional. When it's nil, it's almost always a misspelled or unavailable symbol name. Here's how to diagnose it and how to eliminate the failure m...
Read post →macOS apps reference SF Symbols through NSImage(systemSymbolName:accessibilityDescription:) — another string-keyed API with the same maintenance problem as its iOS counterparts.
Read post →Using SF Symbols across UIKit — buttons, bar items, image views, configurations — and why every one of those call sites is a hand-typed string you have to keep correct forever.
Read post →Comparing the ways to reference SF Symbols safely in Swift — raw strings, hand-rolled enums, SFSafeSymbols, and SFSymbolsKit — and what the maintenance cost of each actually is.
Read post →A practical, incremental strategy for replacing hand-typed SF Symbol name strings with typed properties across an existing codebase — without a risky big-bang refactor.
Read post →Apple adds hundreds of SF Symbols every OS cycle. If your symbol names are hand-typed strings, your codebase silently falls behind every September. Here's how to stay current au...
Read post →