Latest 0.5.0
License MIT
Platforms ios 8.0, tvos 9.0, watchos 2.0, requires ARC
Dependencies Alamofire

CI Status Version License Platform

Abstruct Framewrok of Request


iOS8.0 +, Swift2.2

What’s Brick?

BrickRequest provides protocol only.

You need implement this protocols.
Then API request will be clean.

  • RequestContextType
  • RequestType
  • ResponseType
let request = RequestContextType.create { response in
    // Response process

public protocol RequestContextType {


extension RequestContextType where Self: ResponseType, Self: RequestType {

    public func create(block: Alamofire.Response<SerializedObject, ResponseError> -> Void) -> Alamofire.Request {

        let request = self.createRequest(method: self.method, URLString: self.URLString, manager: self.manager)
        request.response(responseSerializer: self.responseSerializer, completionHandler: block)
        return request

public protocol RequestType {

    var method: Alamofire.Method { get }
    var URLString: String { get }
    var manager: Alamofire.Manager { get }
    func createRequest(method method: Alamofire.Method, URLString: String, manager: Alamofire.Manager) -> Alamofire.Request

public protocol ResponseType {

    associatedtype SerializedObject
    associatedtype ResponseError: ErrorType

    var responseSerializer: Alamofire.ResponseSerializer<SerializedObject, ResponseError> { get }


BrickRequest is available through CocoaPods. To install it, simply add the following line to your Podfile:

pod "BrickRequest"


muukii, [email protected]


BrickRequest is available under the MIT license. See the LICENSE file for more info.

Latest podspec

    "name": "BrickRequest",
    "version": "0.5.0",
    "summary": "BrickRequest is a helper library for Alamofire",
    "description": "- BrickRequest is a helper library for Alamofire.n- You can improve readability and DRYness when working with Alamofire.n- BrickRequest provides several protocols.n  By using protocol extensions, you can build requests, just like building with LEGO bricks.n- You can understand what the request does just by seeing the class signature.n- Auto-retry ability is provided using `Reachability`",
    "homepage": "",
    "license": "MIT",
    "authors": {
        "muukii": "[email protected]"
    "source": {
        "git": "",
        "tag": "0.5.0"
    "platforms": {
        "ios": "8.0",
        "tvos": "9.0",
        "watchos": "2.0"
    "requires_arc": true,
    "source_files": "BrickRequest/*.swift",
    "dependencies": {
        "Alamofire": [
            "~> 3.3.0"

Pin It on Pinterest

Share This