Suggested approach: This protocol was introduced in Swift 4 to let us quickly and safely convert custom Swift types to and from JSON, XML, and similar.
For bonus points talk about customization points such as key and date decoding strategies, the
CodingKey protocol, and more, so that you're able to show you can handle a range of input and output styles.
Estimated difficulty: Easy
Link copied to your pasteboard.