Swifty and modern UserDefaults
Store key-value pairs persistently across launches of your app.
It uses UserDefaults underneath but exposes a type-safe facade with lots of nice conveniences.
It's used in production by all my apps (4 million+ users).
UserDefaults value changes.@AppStorageCodable.Toggle component.Add https://github.com/sindresorhus/Defaults in the “Swift Package Manager” tab in Xcode.
import Defaults
extension Defaults.Keys {
static let quality = Key<Double>("quality", default: 0.8)
}
Defaults[.quality]
//=> 0.8
Defaults[.quality] = 0.5
//=> 0.5
You can also use it in SwiftUI:
struct ContentView: View {
@Default(.quality) var quality
var body: some View {
Slider(value: $quality, in: 0...1)
}
}
Swift
100.0%
Swifty and modern UserDefaults
Store key-value pairs persistently across launches of your app.
It uses UserDefaults underneath but exposes a type-safe facade with lots of nice conveniences.
It's used in production by all my apps (4 million+ users).
UserDefaults value changes.@AppStorageCodable.Toggle component.Add https://github.com/sindresorhus/Defaults in the “Swift Package Manager” tab in Xcode.
import Defaults
extension Defaults.Keys {
static let quality = Key<Double>("quality", default: 0.8)
}
Defaults[.quality]
//=> 0.8
Defaults[.quality] = 0.5
//=> 0.5
You can also use it in SwiftUI:
struct ContentView: View {
@Default(.quality) var quality
var body: some View {
Slider(value: $quality, in: 0...1)
}
}
Swift
100.0%