---
title: App extensions
framework: swiftui
role: collectionGroup
role_heading: API Collection
path: swiftui/app-extensions
---

# App extensions

Extend your app’s basic functionality to other parts of the system, like by adding a Widget.

## Overview

Overview Use SwiftUI along with WidgetKit to add widgets to your app.

Widgets provide quick access to relevant content from your app. Define a structure that conforms to the Widget protocol, and declare a view hierarchy for the widget. Configure the views inside the widget as you do other SwiftUI views, using view modifiers, including a few widget-specific modifiers. For design guidance, see Widgets in the Human Interface Guidelines.

## Topics

### Creating widgets

- [Building Widgets Using WidgetKit and SwiftUI](widgetkit/building_widgets_using_widgetkit_and_swiftui.md)
- [Creating a widget extension](widgetkit/creating-a-widget-extension.md)
- [Keeping a widget up to date](widgetkit/keeping-a-widget-up-to-date.md)
- [Making a configurable widget](widgetkit/making-a-configurable-widget.md)
- [Widget](swiftui/widget.md)
- [WidgetBundle](swiftui/widgetbundle.md)
- [LimitedAvailabilityConfiguration](swiftui/limitedavailabilityconfiguration.md)
- [WidgetConfiguration](swiftui/widgetconfiguration.md)
- [EmptyWidgetConfiguration](swiftui/emptywidgetconfiguration.md)

### Composing control widgets

- [ControlWidget](swiftui/controlwidget.md)
- [ControlWidgetConfiguration](swiftui/controlwidgetconfiguration.md)
- [EmptyControlWidgetConfiguration](swiftui/emptycontrolwidgetconfiguration.md)
- [ControlWidgetConfigurationBuilder](swiftui/controlwidgetconfigurationbuilder.md)
- [ControlWidgetTemplate](swiftui/controlwidgettemplate.md)
- [EmptyControlWidgetTemplate](swiftui/emptycontrolwidgettemplate.md)
- [ControlWidgetTemplateBuilder](swiftui/controlwidgettemplatebuilder.md)
- [controlWidgetActionHint(_:)](swiftui/view/controlwidgetactionhint(_:).md)
- [controlWidgetStatus(_:)](swiftui/view/controlwidgetstatus(_:).md)

### Labeling a widget

- [widgetLabel(_:)](swiftui/view/widgetlabel(_:).md)
- [widgetLabel(label:)](swiftui/view/widgetlabel(label:).md)

### Styling a widget group

- [accessoryWidgetGroupStyle(_:)](swiftui/view/accessorywidgetgroupstyle(_:).md)

### Controlling the accented group

- [widgetAccentable(_:)](swiftui/view/widgetaccentable(_:).md)

### Managing placement in the Dynamic Island

- [dynamicIsland(verticalPlacement:)](swiftui/view/dynamicisland(verticalplacement:).md)

## See Also

### App structure

- [App organization](swiftui/app-organization.md)
- [Scenes](swiftui/scenes.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)
