https://github.com/v-braun/userdefaultsex
Making UserDefaults great (again?)
https://github.com/v-braun/userdefaultsex
propertywrapper swift userdefaults
Last synced: 8 months ago
JSON representation
Making UserDefaults great (again?)
- Host: GitHub
- URL: https://github.com/v-braun/userdefaultsex
- Owner: v-braun
- License: mit
- Created: 2020-01-06T17:51:04.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2020-01-08T16:34:29.000Z (over 6 years ago)
- Last Synced: 2025-01-15T20:20:54.902Z (over 1 year ago)
- Topics: propertywrapper, swift, userdefaults
- Language: Swift
- Size: 12.7 KB
- Stars: 0
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
# UserDefaultsEx
> Making UserDefaults great (again?)
By [v-braun - viktor-braun.de](https://viktor-braun.de).
[](https://github.com/v-braun/UserDefaultsEx/blob/master/LICENSE)
[](https://travis-ci.org/v-braun/UserDefaultsEx)

## Description
Help you to store _Codable_ Objects within UserDefaults.
Just define your properties and UserDefaultsEx will take care of the encoding and decoding process.
## Installation
```
.package(url: "https://github.com/v-braun/UserDefaultsEx", from: "1.0.0")
```
## Usage
``` swift
struct TestSetting : Codable{
var prop1 = ""
var prop2 = ""
}
extension UserDefaults{
@JsonUserDefault(storeIn: UserDefaults.standard, withKey: "mySettings", defaults: TestSetting())
static var mySettings : TestSetting
}
// somewhere:
let settings = UserDefaults.mySettings // will read the settings
settings.prop1 = "hello"
settings.prop2 = "world"
UserDefaults.mySettings = settings // will write the settings
```
## Authors

[v-braun](https://github.com/v-braun/)
## Contributing
Make sure to read these guides before getting started:
- [Contribution Guidelines](https://github.com/v-braun/UserDefaultsEx/blob/master/CONTRIBUTING.md)
- [Code of Conduct](https://github.com/v-braun/UserDefaultsEx/blob/master/CODE_OF_CONDUCT.md)
## License
**UserDefaultsEx** is available under the MIT License. See [LICENSE](https://github.com/v-braun/UserDefaultsEx/blob/master/LICENSE) for details.