Skip to content

Repository files navigation

CodableWrappers

API Docs codecov

Simplified Serialization with Property Wrappers

Make Complex Codable Serialization a breeze with declarative annotations!

@CustomCodable @SnakeCase
struct User: Codable {
    let firstName: String
    let lastName: String
    @SecondsSince1970DateCoding
    var joinDate: Date
    @CustomCodingKey("data")
    var imageData: Data
}

3.0 released! Release Notes


Documentation

Full DocC documentation here thanks to the Swift Package Index!

Installation

Swift Package Manager *Preferred*

URL:

https://github.com/GottaGetSwifty/CodableWrappers.git

Manifest:

dependencies: [
    .package(url: "https://github.com/GottaGetSwifty/CodableWrappers.git", .upToNextMajor(from: "3.0.0" )),
]

CocoaPods

*WARNING* CocoaPods is not currently supported for version 3.0 to avoid complications with Swift Macros.

pod 'CodableWrappers', '~> 2.0.0'

Available CodingKey Macros

Available Property Wrappers

Additional Customization

Additional Links


Compatibility

  • 3.x supports Swift 5.9+
  • 2.x supports Swift 5.2+
  • 1.x supports Swift 5.1+

Contributions

If there is a standard Serialization or Coding Key strategy that could be added feel free to open an issue requesting it and/or submit a pull request with the new option.

About

Make Custom Serialization of Swift Codable Types easy with Annotations

Topics

Resources

Stars

Watchers

Forks

Releases

Sponsor this project

Packages

Used by

Contributors

Languages