Popularity
8.0
Growing
Activity
6.2
Declining
1,653
60
174

Code Quality Rank: L5
Monthly Downloads: 0
Programming language: Swift
License: NOASSERTION
Tags: Networking    
Latest version: v5.0.0

APIKit alternatives and similar libraries

Based on the "Networking" category

Do you think we are missing an alternative of APIKit or a related project?

Add another 'Networking' Library

README

APIKit

Build Status codecov Carthage compatible Version Platform Swift Package Manager

APIKit is a type-safe networking abstraction layer that associates request type with response type.

// SearchRepositoriesRequest conforms to Request protocol.
let request = SearchRepositoriesRequest(query: "swift")

// Session receives an instance of a type that conforms to Request.
Session.send(request) { result in
    switch result {
    case .success(let response):
        // Type of `response` is `[Repository]`,
        // which is inferred from `SearchRepositoriesRequest`.
        print(response)

    case .failure(let error):
        self.printError(error)
    }
}

Requirements

  • Swift 5.0 or later
  • iOS 8.0 or later
  • Mac OS 10.10 or later
  • watchOS 2.0 or later
  • tvOS 9.0 or later

If you use Swift 2.2 or 2.3, try APIKit 2.0.5.

If you use Swift 4.2 or before, try APIKit 4.1.0.

Installation

Carthage

  • Insert github "ishkawa/APIKit" ~> 5.0 to your Cartfile.
  • Run carthage update.
  • Link your app with APIKit.framework and Result.framework in Carthage/Build.

CocoaPods

  • Insert pod 'APIKit', '~> 5.0' to your Podfile.
  • Run pod install.

Note: CocoaPods 1.4.0 is required to install APIKit 5.

Documentation

  • [Getting started](Documentation/GettingStarted.md)
  • [Defining Request Protocol for Web Service](Documentation/DefiningRequestProtocolForWebService.md)
  • [Convenience Parameters and Actual Parameters](Documentation/ConvenienceParametersAndActualParameters.md)

Advanced Guides

  • [Customizing Networking Backend](Documentation/CustomizingNetworkingBackend.md)

Migration Guides

  • [APIKit 3 Migration Guide](Documentation/APIKit3MigrationGuide.md)
  • [APIKit 2 Migration Guide](Documentation/APIKit2MigrationGuide.md)