---
title: Scenes
framework: swiftui
role: collectionGroup
role_heading: API Collection
path: swiftui/scenes
---

# Scenes

Declare the user interface groupings that make up the parts of your app.

## Overview

Overview A scene represents a part of your app’s user interface that has a life cycle that the system manages. An App instance presents the scenes it contains, while each Scene acts as the root element of a View hierarchy.

The system presents scenes in different ways depending on the type of scene, the platform, and the context. A scene might fill the entire display, part of the display, a window, a tab in a window, or something else. In some cases, your app might also be able to display more than one instance of the scene at a time, like when a user simultaneously opens multiple windows based on a single WindowGroup declaration in your app. For more information about the primary built-in scene types, see Windows and Documents. You configure scenes using modifiers, similar to how you configure views. For example, you can adjust the appearance of the window that contains a scene — if the scene happens to appear in a window — using the windowStyle(_:) modifier. Similarly, you can add menu commands that become available when the scene is in the foreground on certain platforms using the commands(content:) modifier.

## Topics

### Creating scenes

- [Scene](swiftui/scene.md)
- [SceneBuilder](swiftui/scenebuilder.md)

### Monitoring scene life cycle

- [scenePhase](swiftui/environmentvalues/scenephase.md)
- [ScenePhase](swiftui/scenephase.md)

### Managing a settings window

- [Settings](swiftui/settings.md)
- [SettingsLink](swiftui/settingslink.md)
- [OpenSettingsAction](swiftui/opensettingsaction.md)
- [openSettings](swiftui/environmentvalues/opensettings.md)

### Building a menu bar

- [Building and customizing the menu bar with SwiftUI](swiftui/building-and-customizing-the-menu-bar-with-swiftui.md)

### Creating a menu bar extra

- [MenuBarExtra](swiftui/menubarextra.md)
- [menuBarExtraStyle(_:)](swiftui/scene/menubarextrastyle(_:).md)
- [MenuBarExtraStyle](swiftui/menubarextrastyle.md)

### Creating watch notifications

- [WKNotificationScene](swiftui/wknotificationscene.md)

### Presenting content on an external display

- [sceneAccessory(content:)](swiftui/view/sceneaccessory(content:).md)
- [SceneAccessoryContent](swiftui/sceneaccessorycontent.md)
- [ExternalNonInteractiveAccessory](swiftui/externalnoninteractiveaccessory.md)

## See Also

### App structure

- [App organization](swiftui/app-organization.md)
- [Windows](swiftui/windows.md)
- [Immersive spaces](swiftui/immersive-spaces.md)
- [Documents](swiftui/documents.md)
- [Navigation](swiftui/navigation.md)
- [Modal presentations](swiftui/modal-presentations.md)
- [Toolbars](swiftui/toolbars.md)
- [Search](swiftui/search.md)
- [App extensions](swiftui/app-extensions.md)
