All things macOS

See also: Apple Platform Development


Distributing Mac apps outside the App Store, a quick start guide, Guilherme Rambo

This article is my brain dump on the subject. It is meant to be a guide on the things that you’ll need to know about when distributing a Mac app outside the App Store, rather than a how-to tutorial. My hope is that having everything listed here will help demystify the process for beginners, and the descriptions of my own process will be useful as starting points.

Creating a licensing system for paid apps in Swift, Bruno Rocha

The easiest way is to create a paid macOS app is to simply put a price tag in the App Store, but it’s a common practice nowadays to provide a free download that can later be upgraded to a pro version. In this article, we’ll use our knowledge of serial numbers and asymmetric cryptography to create license files that cannot be reverse-engineered and use them to activate an app’s premium features.


Resources for learning Objective-C and AppKit, Jeff Johnson

Fucking NSImage Syntax

A list of system image names that can be used for +[NSImage imageNamed:]

Appreciating AppKit, Part 1

AppKit is Apple’s UI framework for building apps for the Mac. It has existed in one form or another for around 30 years and is the basis for many of the concepts and features of UIKit on iOS. Understandably, given its age, it has quite a few quirks and dated features. Some can simply be ignored, such as drawers. Others are still core to how parts of AppKit function, such as NSCell. These features can make AppKit seem daunting and difficult to work with, especially for those who have only known UIKit.

Appreciating AppKit, Part 2

Welcome to the second part of my Appreciating AppKit post. In the previous post I gave an overview of the many views and controls of AppKit that either don’t exist or are not as powerful in UIKit. In this post I want to cover some of the more “behind the scenes” aspects of AppKit, things that help your productivity as a developer and can aid in the architecture of your apps.

AppleProgramming, YouTube

Sandboxing, Notarization, Hardened Runtime, SIP