Monday, September 7, 2026

McKinley 1.0

Amy Worrall (Mastodon):

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.

Mario Guzmán:

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.

Amy Worrall:

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 .car file (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 .car file at runtime, on every edit, by patching bytes into a template, then loading that temporary .car file into McKinley via NSBundle.

Previously:

3 Comments RSS · Twitter · Mastodon


I think Amy's is one of those sleeper apps that's going to influence a lot of creators over the next few years. Including those at Apple.


Looks utterly native without looking outmoded and boring, that's a rare feat! 👏🏼


I do a bit of SVG work but not in SF symbols so do not seem to be the market for McKinley. I do however do printed work, including weird free mini-zines and am definitely the market for Octavo! Glad to be following the developer and getting to use one of her apps.

Leave a Comment