Swiftpack.co - Package - halcyonmobile/RestBird

RestBird 🦉

Codacy Badge Build Status Coverage Status

Lightweight, stateless REST network manager over the Codable protocol.



  • iOS 9.0+ / macOS 10.11+
  • XCode 10.0+
  • Swift 4.2+


  • [x] Codable support.
  • [ ] Built-in Alamofire driver.
  • [ ] Built-in URLSession driver.

Installation Instructions

Swift Package Manager

Add RestBird as a dependency to your project.

.Package(url: "https://github.com/halcyonmobile/RestBird.git", majorVersion: 1)

You can use RestBird and implement your own session handling or use one of the built-in drivers implemented by RestBird (Alamofire and URLSession).

// Use RestBird without any driver
targets: [
    Target(name: "YourTarget", dependencies: ["RestBird"])

// Use the URLSession Driver
targets: [
    Target(name: "YourTarget", dependencies: [
        .product(name: "RestBird-URLSession", package: "RestBird")

// Use the Alamofire Driver
targets: [
    Target(name: "YourTarget", dependencies: [
        .product(name: "RestBird-Alamofire", package: "RestBird")


# use RestBird without any driver
pod 'RestBird'

# use RestBird with Alamofire driver
por 'RestBird/Alamofire'

You can also try it out by running

pod try RestBird


github "halcyonmobile/RestBird"


First you need to create your NetworkClientConfiguration configuration with your custom or one of the provided session manager drivers. We're going to use the AlamofireSessionManager.

struct MainAPIConfiguration: NetworkClientConfiguration {
    let baseUrl = "https://api.example.com"
    let sessionManager = AlamofireSessionManager()

Now we can pass this configuration to the network client.

let networkClient = NetworkClient(configuration: MainAPIConfiguration())


RestBird is released under the MIT license. See LICENSE for details.


Stars: 6
Help us keep the lights on


Used By

Total: 0


v0.2.0 - Oct 18, 2018

With this version, the interface of RestBird became friendlier.

  • Expose necessary attributes and functions for a usable Framework.
  • Implemented Alamofire driver for data and upload tasks.
  • Separate the framework into a core and multiple driver modules.

v0.1.0 - Oct 8, 2018

• Request object • Abstract network manager • Built-in Alamofire support