A Swift Web Framework and HTTP Server
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
- URL routing (e.g., GET, POST, PUT, DELETE, PATCH)
- Codable routing
- URL parameters
- Static file serving
- FastCGI support
- SSL/TLS support
- Pluggable middleware
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.
- Clone this repository.
$ git clone https://github.com/IBM-Swift/Kitura
- Build and run tests.
$ swift test
You can find more info on contributing to Kitura in our contributing guidelines.
We love to talk server-side Swift, and Kitura. Join our Slack to meet the team!
Help us keep the lights on
2.3.0 - Apr 17, 2018
- 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
opento allow subclassing (#1245)
- Documentation improvements
- A fix for memory leaks caused by a failure to invoke callbacks in certain error paths (#1232)
2.2.0 - Jan 30, 2018
2.1.0 - Dec 18, 2017
- 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
- 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).
1.7.9 - Sep 14, 2017
- Add support for Swift 4
- Allow the limit on consecutive Keep-Alive requests per connection to be configurable. The default has been changed to allow an unlimited number of requests.