<!--
{
  "documentType" : "article",
  "framework" : "UIKit",
  "identifier" : "/documentation/UIKit/mac-catalyst",
  "metadataVersion" : "0.1.0",
  "role" : "collectionGroup",
  "title" : "Mac Catalyst"
}
-->

# Mac Catalyst

Create a version of your iPad app that users can run on a Mac device.

## Discussion

With Mac Catalyst, you can make a Mac version of your iPad app. Click the Mac checkbox in your iPad app’s project settings to configure the project to build both Mac and iPad versions of your app. The two apps share the same project and source code, making it easy to change your code in one place.

![A photograph of an iPad and a Mac laptop, with an arrow pointing from the iPad to the Mac. The screen of the iPad shows a sample recipes app and the laptop displays a Mac version of the sample app.](images/com.apple.uikit/mac-catalyst@2x.png)

For information about designing a Mac version of your iPad app, see [Mac Catalyst](https://developer.apple.com/design/human-interface-guidelines/ios/overview/mac-catalyst/) in the Human Interface Guidelines.

> Important:
> Mac apps built with Mac Catalyst can only use <doc://com.apple.documentation/documentation/AppKit> APIs marked as available in Mac Catalyst, such as <doc://com.apple.documentation/documentation/AppKit/NSToolbar> and <doc://com.apple.documentation/documentation/AppKit/NSTouchBar>. Mac Catalyst doesn’t support accessing unavailable AppKit APIs.

## Topics

### Essentials

[Creating a Mac version of your iPad app](/documentation/UIKit/creating-a-mac-version-of-your-ipad-app)

Bring your iPad app to macOS with Mac Catalyst.

### App support

  <doc://com.apple.documentation/tutorials/Mac-Catalyst>

[Choosing a user interface idiom for your Mac app](/documentation/UIKit/choosing-a-user-interface-idiom-for-your-mac-app)

Select the iPad or the Mac user interface idiom in your Mac app built with Mac Catalyst.

[Optimizing your iPad app for Mac](/documentation/UIKit/optimizing-your-ipad-app-for-mac)

Make your iPad app more like a Mac app by taking advantage of system features in macOS.

  <doc://com.apple.documentation/documentation/BundleResources/Information-Property-List/LSMinimumSystemVersion>

  <doc://com.apple.documentation/documentation/BundleResources/Information-Property-List/UIApplicationSceneManifest/UIApplicationSupportsTabbedSceneCollection>

### User interface

[UIKit Catalog: Creating and customizing views and controls](/documentation/UIKit/uikit-catalog-creating-and-customizing-views-and-controls)

Customize your app’s user interface with views and controls.

[Building and improving your app with Mac Catalyst](/documentation/UIKit/building-and-improving-your-app-with-mac-catalyst)

Improve your iPadOS app with Mac Catalyst by supporting native controls, multiple windows, sharing, printing, menus and keyboard shortcuts.

[Displaying a checkbox in your Mac app built with Mac Catalyst](/documentation/UIKit/displaying-a-checkbox-in-your-mac-app-built-with-mac-catalyst)

Present a switch control as a Mac-style checkbox when your app runs in the Mac user interface idiom.

[Removing the title bar in your Mac app built with Mac Catalyst](/documentation/UIKit/removing-the-title-bar-in-your-mac-app-built-with-mac-catalyst)

Display content that fills the entire height of a window by removing the title bar.

[Toolbar](/documentation/UIKit/toolbar)

Provide a space for controls under a window’s title bar and above your custom content.

  <doc://com.apple.documentation/documentation/AppKit/touch-bar>

### User interactions

[Navigating an app’s user interface using a keyboard](/documentation/UIKit/navigating-an-app-s-user-interface-using-a-keyboard)

Navigate between user interface elements using a keyboard and focusable UI elements in iPad apps and apps built with Mac Catalyst.

[Adding menus and shortcuts to the menu bar and user interface](/documentation/UIKit/adding-menus-and-shortcuts-to-the-menu-bar-and-user-interface)

Provide quick access to useful actions by adding menus and keyboard shortcuts to your Mac app built with Mac Catalyst.

[Handling key presses made on a physical keyboard](/documentation/UIKit/handling-key-presses-made-on-a-physical-keyboard)

Detect when someone presses and releases keys on a physical keyboard.

[`UIHoverGestureRecognizer`](/documentation/UIKit/UIHoverGestureRecognizer)

A continuous gesture recognizer that interprets pointer movement over a view.

### User preferences

[Displaying a Settings window](/documentation/UIKit/displaying-a-settings-window)

Provide a Settings window in your Mac app built with Mac Catalyst so users can manage app settings defined in a Settings bundle.

[Detecting changes in the preferences window](/documentation/UIKit/detecting-changes-in-the-preferences-window)

Listen for and respond to a user’s preference changes in your Mac app built with Mac Catalyst using Combine.

### Tooltips

[Showing help tags for views and controls using tooltip interactions](/documentation/UIKit/showing-help-tags-for-views-and-controls-using-tooltip-interactions)

Explain the purpose of interface elements by showing a tooltip when a person positions the pointer over the element.

[`UIToolTipInteraction`](/documentation/UIKit/UIToolTipInteraction)

An interaction object that makes it possible to show a tooltip when hovering a pointer over a view or control.

[`UIToolTipInteractionDelegate`](/documentation/UIKit/UIToolTipInteractionDelegate)

An interface that provides tooltip settings to an interaction.



---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)
