Swiftpack.co - Package - apparata/NetAppKit


SwiftPM compatible MIT License language Swift 5.1 platform macOS platform Linux

Framework for making Express-like net apps using Swift NIO.


NetAppKit is released under the MIT license. See LICENSE file for more detailed information.

Table of Contents

Getting Started

Add NetAppKit to your Swift package by adding the following to your Package.swift file in the dependencies array:

.package(url: "https://github.com/apparata/NetAppKit.git", from: "<version>")

If you are using Xcode 11 or newer, you can add NetAppKit by entering the URL to the repository via the File menu:

File > Swift Packages > Add Package Dependency...

Note: NetAppKit requires Swift 5.1 or later.

Reference Documentation

There is generated reference documentation available.


import Foundation
import NetAppKit

let app = App()

app.handle(.GET, path: "/helloworld") { (request, response) in
    response.send("This is a test.")
    return .handled

app.handle(.GET, path: "/echo/:word") { (request, response) in
    response.send("Echoed word: \(request.parameter("word"))")
    return .handled

// Subapp that is installed on /date, so /today endpoint will be /date/today
let subapp = App()

subapp.handle(.GET, path: "/today") { (request, response) in
    response.send("Today's date is \(Date())")
    return .handled

app.installSubapp(subapp, path: "/date")

do {
    let server = AppServer(app: app)
    try server.listen(on: 4000)
} catch {


Stars: 1
Help us keep the lights on


Used By

Total: 0


0.2.8 - Oct 28, 2019

0.2.7 - Oct 27, 2019

Added an optional closure property to App for conveniently validating values of a API-Key header.

app.validateAPIKey = { (apiKey: String) -> Bool in
    apiKey == "MySecretAPIKey"

0.2.6 - Oct 2, 2019

0.2.5 - Oct 2, 2019

0.2.4 - Aug 31, 2019