---
title: State modifiers
framework: swiftui
role: collectionGroup
role_heading: API Collection
path: swiftui/view-state
---

# State modifiers

Access storage and provide child views with configuration data.

## Overview

Overview SwiftUI provides tools for managing data in your app. For example, you can store values and objects in an environment that’s shared among the views in a view hierarchy. Any view that shares the environment — typically all the descendant views of the view that stores the item — can then access the stored item. For more information about the types that SwiftUI provides to help manage data in your app, see Model data.

## Topics

### Identity

- [tag(_:includeOptional:)](swiftui/view/tag(_:includeoptional:).md)
- [id(_:)](swiftui/view/id(_:).md)
- [equatable()](swiftui/view/equatable().md)

### Environment values

- [environment(_:)](swiftui/view/environment(_:).md)
- [environment(_:_:)](swiftui/view/environment(_:_:).md)
- [environmentObject(_:)](swiftui/view/environmentobject(_:).md)
- [transformEnvironment(_:transform:)](swiftui/view/transformenvironment(_:transform:).md)

### Preferences

- [preference(key:value:)](swiftui/view/preference(key:value:).md)
- [transformPreference(_:_:)](swiftui/view/transformpreference(_:_:).md)
- [anchorPreference(key:value:transform:)](swiftui/view/anchorpreference(key:value:transform:).md)
- [transformAnchorPreference(key:value:transform:)](swiftui/view/transformanchorpreference(key:value:transform:).md)
- [onPreferenceChange(_:perform:)](swiftui/view/onpreferencechange(_:perform:).md)
- [backgroundPreferenceValue(_:_:)](swiftui/view/backgroundpreferencevalue(_:_:).md)
- [backgroundPreferenceValue(_:alignment:_:)](swiftui/view/backgroundpreferencevalue(_:alignment:_:).md)
- [overlayPreferenceValue(_:_:)](swiftui/view/overlaypreferencevalue(_:_:).md)
- [overlayPreferenceValue(_:alignment:_:)](swiftui/view/overlaypreferencevalue(_:alignment:_:).md)

### Default storage

- [defaultAppStorage(_:)](swiftui/view/defaultappstorage(_:).md)

### Configuring a model

- [modelContext(_:)](swiftui/view/modelcontext(_:).md)
- [modelContainer(_:)](swiftui/view/modelcontainer(_:).md)
- [modelContainer(for:inMemory:isAutosaveEnabled:isUndoEnabled:onSetup:)](swiftui/view/modelcontainer(for:inmemory:isautosaveenabled:isundoenabled:onsetup:).md)

## See Also

### Providing interactivity

- [Input and event modifiers](swiftui/view-input-and-events.md)
- [Search modifiers](swiftui/view-search.md)
- [Presentation modifiers](swiftui/view-presentation.md)
