What is Dynamo?

Starting this project the intention was to code the simplest possible Web Server entirely in Swift. Unfortunately I got a bit carried away adding features such as proxying and dynamic reloading of server code. Dynamo now also works on Linux, see DynamoLinux.

So.. while Dynamo can be used in an iOS application as is demonstrated in this project, the focus has turned to the server side to set up a simple framework inside which it is possible to experiment with SSL, Proxies and what you could call “Swift Server Pages” which are loadable bundles of code placed in the document hierarchy.

The Dynamo server core is based on “Swiftlets”, instances implementing the DynamoSwiftlet protocol. These are presented with incoming HTTP requests from the browser and can choose to process it in any manner it chooses. The developer passes in an array of swiftlet instances combining the features and applications desired on server startup.

Overview