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.
Documentation
Full documentation can be found on the Curassow website: https://curassow.fuller.li
Usage
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", body: "Hello World")
}
Then build and run your application:
$ swift build --configuration release
Example Application
You can find a hello world example application that uses Curassow.
License
Curassow is licensed under the BSD license. See LICENSE for more info.