Modern implementation of the Preferences window for OS X apps, used in TextMate, GitBox and Mou:
Objective-C Ruby
Switch branches/tags
Failed to load latest commit information.
Framework Xcode: Fix Swift compatibility with macOS SDK 10.13 Jul 29, 2017
.gitignore Adds Carthage/Build to .gitignore to ease working with MASPreferences… Sep 4, 2016 Update podspec Sep 4, 2016
MASPreferences.podspec Update podspec Sep 4, 2016 Add Install Section in Oct 25, 2016


This component is intended as a replacement for SS_PrefsController by Matt Legend Gemmell and Selectable Toolbar by Brandon Walkin. It is designed to use NSViewController subclasses for preference panes.

How to use

You can find a Demo project at MASPreferencesDemo.

##Swift Edge case When using Swift you need to override the identifier from MASPreferencesViewController the following to be compatible with the mutable identifier String? in NSViewController

override var identifier: String? { get {return "general"} set { super.identifier = newValue} }



  • Add github "shpakovski/MASPreferences" to your Cartfile.


  • Add pod 'MASPreferences' to your Podfile.