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: 7176
Help us keep the lights on

Releases

2.7.2 - Sep 6, 2019

  • fix: Correctly register Codable paths which contain an explicit :id (#1485)

2.8.1 - Sep 6, 2019

  • fix: Correctly register Codable paths which contain an explicit :id (#1484)

2.7.1 - Jul 8, 2019

  • Resolve compilation failures with Swift 5.1 (#1466)

2.8.0 - Aug 12, 2019

Features

  • Enable Kitura to exit with a non-zero exit code (#1430)
    • note: Kitura.run() will now call exit() to terminate the process with a non-zero status code if any of the listeners fails to start, such as if a requested port is in use. To prevent this, you may specify Kitura.run(exitOnFailure: false).
  • Maintain the URL query when static file server redirects (#1381)
  • Allow servers to listen on a specific address (#1453)
  • Define a Kitura.logTo() function for logging via swift-log (#1460)
  • StaticFileServer fallback option to support single-page applications (#1464)
  • Convenience API for creating cookies (#1468)

Fixes

  • Swift 5.1 support (#1466)
  • Add iOS availability (#1475)

2.7.0 - Apr 17, 2019

Features

  • Support UNIX domain sockets (client and server) (#1434)

Fixes

  • Update MIME content types (#1441)
  • Swagger/OpenAPI generation improvements (#1420, #1346, #1347)
  • Require TypeDecoder 1.3 on Swift 4.0 and 4.1 (#1439)
  • Build in Swift 5 mode (#1436)
  • Improve test resilience (#1426)
  • Use official Swift Docker images for testing (#1424)
  • Use UTF8View to create Data (#1395)

Performance

  • Remove NSString from Accepts header and cookies (#1402)
  • Avoid NSString in query parameters (#1401)
  • Avoid unnecessary copy in RouterResponse.send() (#1394)