A common place for our Networking code. On iOS this can be tricky. Since Swift 4.0 this can be very straight forward with the Codable
protocol. More info on WWWDC 2017 session video: New in Founcation
Our goal with Faro is:
- Decode objects from JSON data returned from any service.
- Easy to debug errors and logs in the console
- Simplify security setup
Go play in the FaroPlayground.
Open the ./Example/Faro.xcworkspace
and open the FaroPlayground. You will be guided into the concepts as you try out the code.
As always feedback more then welcome. (🍻 also!)
Faro makes heavy use of Asynchronous Throwing. Why this is can be found a a super post from 2015 from @terhechte https://appventure.me/2015/06/19/swift-try-catch-asynchronous-closures/
- iOS 10 and Swift 4.0 or higher
- Because we use generics you can only use this pod in Swift only files. You can mix and Match with Objective-C but not with generic classes. Types More info
Faro is available through CocoaPods and the Swift Package Manager.
To install it with CocoaPods, add the following line to your Podfile:
pod "Faro", "~>3.0"
More info on the contribution guidelines wiki page.
We follow the iCapps Coding guidelines.
We use Swiftlint to keep everything neat.
Faro is available under the MIT license. See the LICENSE file for more info.