Curassow

Curassow is a Swift Nest HTTP Server. It uses the pre-fork worker model and it’s similar to Python’s Gunicorn and Ruby’s Unicorn.

It exposes a Nest-compatible interface for your application, allowing you to use Curassow with any Nest compatible web frameworks of your choice.

Quick Start

To use Curassow, you will need to install it via the Swift Package Manager, you can add it to the list of dependencies in your Package.swift:

import PackageDescription


let package = Package(
  name: "HelloWorld",
  dependencies: [
    .Package(url: "https://github.com/kylef/Curassow.git", majorVersion: 0, minor: 6),
  ]
)

Afterwards you can place your web application implementation in Sources and add the runner inside main.swift which exposes a command line tool to run your web application:

import Curassow
import Inquiline


serve { request in
  return Response(.ok, contentType: "text/plain", content: "Hello World")
}

Then build and run your application:

$ swift build --configuration release
$ ./.build/release/HelloWorld

Check out the Hello World example application.