McKinley 1.0
McKinley is an all-in-one studio for drawing and annotating SF Symbols. It bundles vector tools with knowledge of the SF Symbols structure, so you can edit one set of objects across multiple weights, sizes and colours. Import SVG or start from scratch, live preview your work using Appleβs own renderer, and export directly to Xcode, so you never need touch the SF Symbols app again!
[β¦]
Gone are the days of converting your strokes and shapes to outlined paths before export. Keep everything how you drew it, and let McKinley handle the output.
[β¦]
Link your projectβs asset catalog to your McKinley document. Then when you make a change, hit the Sync keyboard shortcut and itβs immediately populated with your latest version.
[β¦]
McKinley is a Mac-assed Mac app: a native AppKit UI, Quick Look previews and thumbnails for your documents, a full AppleScript dictionary for batch work, and the whole user guide offline in Help.
$60, no subscription. Itβs been a while since I had to deal with custom SF Symbols, but I remember it being a major pain. I havenβt had the chance to try McKinley with a real project yet, but it looks very well done. I love seeing a new app ship with documentation and extensive AppleScript support, including sample scripts that you can install right from its script menu.
The icon isnβt just a symbol but a whole artistic creation on a canvas.
Look at how your tools are on panels that could be individually opened on their own auxiliary window. I canβt stand the single-window, everything buried into a single-sidebar design we get these days.
SF Symbols rendering does a surprising amount behind your back: it interpolates nine weights from three masters, applies optical size adjustments, resolves hierarchical opacity ladders, and changes some of this between OS releases. Any preview I rendered myself might diverge from the real thing in ways nobody would notice until the symbol was in an app looking subtly wrong. (Obviously I aim to get my canvas rendering with the exact same nuance as Appleβs renderer, but programmers are fallible and the fewer ways things can diverge, the better.)
Apple provides no API for βhereβs my SVG, render it as a symbolβ. For a normal app using a custom SF Symbol, the symbol is compiled from an Asset Catalog in Xcode into a
.carfile (a compiled asset catalog) at build time. But thereβs no βbuild timeβ when I want to update a preview in McKinley.My workaround involves compiling your symbol into a
.carfile at runtime, on every edit, by patching bytes into a template, then loading that temporary.carfile into McKinley via NSBundle.
Previously:
Update (2026-09-08): John Gruber:
I mean just look at McKinley. Itβs both beautiful and quite obviously a serious professional tool.
Update (2026-09-11): Amy Worrall:
Anyone used any great implementations of dockable palettes? (Adobeβs donβt count, I donβt think theyβre great!)
Iβm not going to go back to sidebars, but some kind of options/flexibility might work, if it doesnβt get in the way!