Group Group Group Group Group Group Group Group Group Group Shape Group Group Group Group Group Group Group Group Group Group Group Group Group Group Group Group Group Group Group Group Group Group Group Group Group Group Group Group Group Group Group Group Group Group Group Group Group
Skip to Content
  • iii. Dedications
  • More
    • NewsletterNewsletter
    • ForumsForums
Sign In
Create a free account
  • Search
  • Notebook
  • Customise
Pro

macOS by Tutorials

First Edition Swift 5.5, macOS 12, Xcode 13

Before You Begin

Section 0: 5 chapters
  • i. What You Need
  • ii. Book Source Code & Forums
  • iii. Dedications
  • iv. About the Team
  • v. Introduction
    • How to read this book

Section I: Your First App: On This Day

Section 1: 6 chapters
  • 1. Designing the Data Model
    • 1.1 Where is the Data Coming From?
    • 1.2 Saving a Sample Data Set
    • 1.3 Using the Sample Data
    • 1.4 Exploring the JSON
    • 1.5 Decoding the Top Level
    • 1.6 Going Deeper
    • 1.7 Processing the Links
    • 1.8 Making Day Easier to Use
    • 1.9 Identifying Data Objects
    • 1.10 Tidying up the Event Text
    • 1.11 Bringing it All Together
    • 1.12 Testing with Live Data
    • 1.13 Key Points
    • 1.14 Where to Go From Here?
  • 2. Working With Windows
    • 2.1 A New Mac App
    • 2.2 Designing the Window
    • 2.3 Setting up the Sidebar
    • 2.4 Previewing macOS Views
    • 2.5 Creating an Event Card
    • 2.6 Using Live Data
    • 2.7 Showing Data in a Grid
    • 2.8 Styling the Event Card
    • 2.9 Working with Multiple Windows
    • 2.10 Challenge
    • 2.11 Key Points
    • 2.12 Where to Go From Here?
  • 3. Adding Menus & Toolbars
    • 3.1 What Is a Menu?
    • 3.2 Setting up Menu Commands
    • 3.3 Using Pre-built Menu Groups
    • 3.4 Inserting a Menu Item
    • 3.5 Creating a New Menu
    • 3.6 Adding a Toggle
    • 3.7 Using a Picker
    • 3.8 Adding a Toolbar
    • 3.9 Searching the Grid
    • 3.10 Making Your Toolbar Customizable
    • 3.11 Challenges
    • 3.12 Key Points
    • 3.13 Where to Go From Here?
  • 4. Using Tables & Custom Views
    • 4.1 Why Use a Table?
    • 4.2 Adding a Table
    • 4.3 Switching Views
    • 4.4 Storing Window Settings
    • 4.5 Sorting the Table
    • 4.6 Selecting Events
    • 4.7 Custom Views
    • 4.8 Adding to the Sidebar
    • 4.9 Challenges
    • 4.10 Key Points
    • 4.11 Where to Go From Here?
  • 5. Setting Preferences & Icons
    • 5.1 Preferences
    • 5.2 Creating a Preferences View
    • 5.3 Adding Tabs
    • 5.4 Setting up the Show Options
    • 5.5 Designing the Appearance Tab
    • 5.6 Editing the App Name
    • 5.7 App Icons
    • 5.8 Configuring the About Box
    • 5.9 Help?
    • 5.10 Challenge
    • 5.11 Key points
    • 5.12 Where to Go From Here?
  • 6. Why Write a macOS App?
    • 6.1 What Makes a Mac App?
    • 6.2 What are the Alternatives?
    • 6.3 And the Winner Is…
    • 6.4 Code Sharing
    • 6.5 Challenge
    • 6.6 Key Points
    • 6.7 Where to Go From Here?

Section II: Building a Menu Bar App

Section 2: 3 chapters
  • 7. Using the Menu Bar for an App
    • 7.1 Setting up the App
    • 7.2 Converting the App into a Menu Bar App
    • 7.3 Why AppKit?
    • 7.4 Adding the Models
    • 7.5 Static Menu Items
    • 7.6 Dynamic Menu Items
    • 7.7 Styling the Menu Items
    • 7.8 Creating a Custom View
    • 7.9 Using the Custom View
    • 7.10 Challenge
    • 7.11 Key Points
    • 7.12 Where to Go From Here?
  • 8. Working with Timers, Alerts & Notifications
    • 8.1 Linking Outlets and Actions
    • 8.2 Managing the Tasks
    • 8.3 Timers
    • 8.4 Tracking the Timer State
    • 8.5 Starting and Stopping Tasks
    • 8.6 Updating the Menu Title
    • 8.7 Updating the Tasks
    • 8.8 Checking the Timer
    • 8.9 Creating Alerts
    • 8.10 Using Local Notifications
    • 8.11 Key Points
    • 8.12 Where to Go From Here?
  • 9. Adding Your Own Tasks
    • 9.1 Storing Data
    • 9.2 Retrieving Data
    • 9.3 Opening the Sandbox
    • 9.4 Editing the Tasks
    • 9.5 Showing the Edit Window
    • 9.6 Saving and Reloading
    • 9.7 Using Notification Center
    • 9.8 Launching on Login
    • 9.9 Using the App
    • 9.10 Challenges
    • 9.11 Key Points
    • 9.12 Where to Go From Here?

Section III: Building a Document-based App

Section 3: 2 chapters
  • 10. Creating A Document-Based App
    • 10.1 Setting Up a Document-based App
    • 10.2 The Default Document App
    • 10.3 Configuring for Markdown
    • 10.4 Markdown and HTML
    • 10.5 Embedding an AppKit View
    • 10.6 Displaying the HTML
    • 10.7 Limiting the Frames
    • 10.8 Adding a Toolbar
    • 10.9 Configuring the Preview
    • 10.10 Challenges
    • 10.11 Key Points
    • 10.12 Where to Go From Here?
  • 11. Adding Menu Controls
    • 11.1 Adding the Style Files
    • 11.2 Creating a New Menu
    • 11.3 Styling the HTML
    • 11.4 Adding Keyboard Shortcuts
    • 11.5 Inserting a Submenu
    • 11.6 Using the Help Menu
    • 11.7 Focusing on a Window
    • 11.8 Adding a Window-specific Menu
    • 11.9 Exporting the HTML
    • 11.10 Coding for the Touch Bar
    • 11.11 Challenges
    • 11.12 Key Points
    • 11.13 Where to Go From Here?

Section IV: Advanced Wizardry

Section 4: 3 chapters
  • 12. Diving Deeper Into Your Mac
    • 12.1 Terminal Commands
    • 12.2 Running Commands in a Playground
    • 12.3 Wrapping it in Functions
    • 12.4 Manipulating Images
    • 12.5 Challenges
    • 12.6 Key Points
    • 12.7 Where to Go From Here?
  • 13. Adding the Interface
    • 13.1 The Starter Project
    • 13.2 Choosing Files and Folders
    • 13.3 Dragging and Dropping
    • 13.4 Showing the File Path
    • 13.5 Using sips
    • 13.6 Showing the Terminal Output
    • 13.7 Resizing Images
    • 13.8 The Mac Sandbox Again
    • 13.9 Locking the Aspect Ratio
    • 13.10 Creating Thumbnails
    • 13.11 Challenge
    • 13.12 Key Points
    • 13.13 Where to Go From Here?
  • 14. Automation for Your App
    • 14.1 What is Automation?
    • 14.2 Adding a Service
    • 14.3 Testing the Services Menu
    • 14.4 Handling the Service Call
    • 14.5 Using the Service
    • 14.6 Adding a Shortcut
    • 14.7 Using the Shortcut
    • 14.8 Key Points
    • 14.9 Where to Go From Here?

Section V: Distributing Your macOS Apps

Section 5: 3 chapters
  • 15. Using the Mac App Store
    • 15.1 Distribution Options
    • 15.2 Setting up your Developer Account
    • 15.3 Identifying Your App
    • 15.4 Code Signing
    • 15.5 Uploading Your App
    • 15.6 Configuring the App
    • 15.7 TestFlight
    • 15.8 Releasing Your App
    • 15.9 Checking your Crash Logs
    • 15.10 Updating the App
    • 15.11 Key Points
    • 15.12 Where to Go From Here?
  • 16. Distributing Externally
    • 16.1 Apple’s Gatekeeper
    • 16.2 Exporting the App
    • 16.3 Notarizing the App
    • 16.4 Wrapping Your App
    • 16.5 Selling Your App
    • 16.6 Releasing Updates
    • 16.7 Troubleshooting
    • 16.8 Key Points
  • 17. Conclusion
Home iOS & Swift Books macOS by Tutorials

iii
Dedications Written by Sarah Reichelt

To Tim who is endlessly supportive, even when listening to me complain about all my bugs.

— Sarah Reichelt

iv. About the Team ii. Book Source Code & Forums

Have a technical question? Want to report a bug? You can ask questions and report bugs to the book authors in our official book forum here.

© 2022 Razeware LLC