Build websites in Swift

Swiftfire is a webserver written to be extended with Services and Functions such that it allows websites to be created in Swift.

Out of the box, Swiftfire provides a static website server.

Services can be added to provide extra features to the website based on the HTTP(S) request.

Functions can be added to provide extra features to the website by injection of HTML & CSS into an existing page.

Services and Functions are programmed in the Swift language.

Open Source

All code is open source. You are encouraged to download the sourcecode from github and customize the Swift code as necessary for your own website/project. Up until version 1.0 is released this will be the only way to install Swiftfire. From v1.0 on, there will be builds that can be downloaded from the AppStore for convenience or non-programmers.

Readme

Before you get going please read the readme page to get familiar with some basic terminology/approaches.

Subprojects

The Swiftfire project is split into smaller projects.

  • BRUtils: Mostly type extensions used through the project.
  • Ascii: Ascii character definitions.
  • CAsl: A bridge to allow access to the ASL facility.
  • COpenSsl: A bridge to allow access to openSSL v1.1.0.
  • KeyedCache: A general purpose dictionary like cache.
  • SwifterLog: A general purpose logging utility.
  • SwifterJSON: A JSON code interpreter/generator.
  • SwifterSockets: A collection of networking utilities at the POSIX level.
  • SecureSockets: A collection of networking utilities that implement SSL.
  • SwiftfireCore: Shared classes between SwiftfireConsole and Swiftfire
  • SwiftfireConsole: A console (GUI) application to monitor and control a swiftfire webserver.
  • Swiftfire: The webserver (a GUI-less application).

All of these are open source and can be found on github.