Let’s start in December 2015. Swift opensourced. I had a hackintosh laptop that I used to write Dart code. My friend and co-developer Robbert Brandsma, who used Swift for iOS projects, convinced me to give Swift a try. That thursday evening I visited his home and spent until sunday night hacking at Swift. Not much later, probably a few days, we got the crazy idea to develop a web application in Swift. By then, only Paulo Faria and his group, Zewo, had gotten a simple webserver to work. It relied heavily on C and the API was not even close to mature.

We decided to use Zewo for now and used the community’s choice for a MongoDB driver, by Dan Appel, to set up a website using our favourite database, MongoDB. This is when we realised we didn’t agree. In Dart everything felt part of a whole, the language. APIs were natural and easy to use and understand. They followed standards. Wrapping C made it tough to do that but allowed quick deployment. So we wanted to create our own MongoDB driver, and whilst we’re at it an HTTP server, too. So we did.

We wrote a funny library for parsing binary data (BSON) and an HTTP Server called “Microwave” which supported websockets as a first. Not soon after we created MongoKitten and switched to using the then new library called Vapor (at version 0.3), by Tanner Nelson. So about 3 months later, in March, we felt it was mature enough compared to other libraries to publish it on Reddit, too.