---
title: AppStorage
framework: swiftui
role: symbol
role_heading: Structure
path: swiftui/appstorage
---

# AppStorage

A property wrapper type that reflects a value from UserDefaults and invalidates a view on a change in value in that user default.

## Declaration

```swift
@frozen @propertyWrapper struct AppStorage<Value>
```

## Topics

### Storing a value

- [init(wrappedValue:_:store:)](swiftui/appstorage/init(wrappedvalue:_:store:).md)
- [init(_:store:)](swiftui/appstorage/init(_:store:).md)

### Getting the value

- [wrappedValue](swiftui/appstorage/wrappedvalue.md)
- [projectedValue](swiftui/appstorage/projectedvalue.md)

## Relationships

### Conforms To

- [DynamicProperty](swiftui/dynamicproperty.md)
- [Sendable](swift/sendable.md)
- [SendableMetatype](swift/sendablemetatype.md)

## See Also

### Saving state across app launches

- [Restoring your app’s state with SwiftUI](swiftui/restoring-your-app-s-state-with-swiftui.md)
- [defaultAppStorage(_:)](swiftui/view/defaultappstorage(_:).md)
- [SceneStorage](swiftui/scenestorage.md)
