Swiftpack.co - Package - IBM-Swift/Kitura

Kitura

A Swift Web Framework and HTTP Server

Docs Build Status - Master macOS Linux Apache 2 codecov codebeat badge Slack Status

Summary

Kitura is a web framework and web server that is created for web services written in Swift. For more information, visit www.kitura.io.

Table of Contents

Features

  • URL routing (e.g., GET, POST, PUT, DELETE, PATCH)
  • Codable routing
  • URL parameters
  • Static file serving
  • FastCGI support
  • SSL/TLS support
  • Pluggable middleware

Getting Started

Visit www.kitura.io for a Getting Started guide, tutorials, and API reference documentation.

Contributing to Kitura

All improvements to Kitura are very welcome! Here's how to get started with developing Kitura itself.

  1. Clone this repository.

$ git clone https://github.com/IBM-Swift/Kitura

  1. Build and run tests.

$ swift test

You can find more info on contributing to Kitura in our contributing guidelines.

Community

We love to talk server-side Swift, and Kitura. Join our Slack to meet the team!

Github

link
Stars: 6583
Help us keep the lights on

Releases

2.4.0 - Jun 1, 2018

What's New

  • Support for a new kind of type-safe middleware
  • Support for generating Swagger from Codable routes
  • Type-safe templating
  • Tech preview of Kitura on SwiftNIO (see kitura-nio branch)
  • request.getQueryParameters() for decoding query params in Codable routes
  • request.queryParametersMultiValues for easily decoding comma-separated query params
  • response.userInfo dictionary for stashing user data in a response
  • Extra Codable routing API for returning a single Codable from a GET route with query params
  • ParsedBody.asRaw for easy decode of HTTP body data as Data
  • Better error messages on JSON decode failure
  • Swift 4.2 support

2.3.0 - Apr 17, 2018

What's New

  • Support for sending a Codable body with a RequestError response (#1214)
  • Support for sending arrays of tuples of (Identifier, Codable) - (#1223)
  • new convenience API to simplify development of CodableRouter extensions (#1222)
  • Codable Routing support for URLEncoded forms (#1228)
  • Support for Swift 4.1 (#1230)
  • Bridge KituraNet.HTTPStatusCode (#1217)
  • Declare StaticFileServer API open to allow subclassing (#1245)
  • Documentation improvements

Fixes

  • A fix for memory leaks caused by a failure to invoke callbacks in certain error paths (#1232)

2.2.0 - Jan 30, 2018

What's New

2.1.0 - Dec 18, 2017

What's New

  • Adds an additional Codable api to supporting a GET handler for non-arrays return types
  • Support for an array mapping in Query Parameters
  • Provides support for Range Requests
  • Migration to Swift 4.0.2

2.0.0 - Oct 27, 2017

What's New

  • Migrated the Kitura framework to be a pure Swift 4 package.
  • Improved developer experience by adding new Codable routing support for common HTTP verbs (i.e. GET, PUT, POST, PATCH, DELETE).