MongoKitten is a production ready MongoDB driver for Swift. It does not lean on the existing MongoDB C driver, unlike most implementations of MongoDB drivers. It aims to be an extremely high performance, native and very Swift friendly driver for interfacing with MongoDB 3.0 and onwards. We aim to support easy of use above all, but require all aspects of the driver to allow advanced MongoDB and Swift developers to leverage the driver for specific and complex use cases.
MongoKitten 4, the currently stable version, is written as a completely standalone version fit for all Swift developers, iOS included. MongoKitten 5 is written on top of NIO and, as it stands, aims to but does not yet support iOS with the ease of use we desire.
The MongoKitten project aims to inspire other projects to put the same amount of effort and dedication into creating projects that fit the Swift ecosystem, rather than merely supporting it. In addition to setting an example, MongoKitten has been actively in development for two and a half years and going, showing dedication and experience with the problems at hand.
As part of the MongoKitten project we also provide BSON for the MongoDB specific data structures and “Meow”, a more high level ORM. The next versions (MongoKitten 5.0 and Meow 2.0) are a work in progress right now.
We hope our community will accompany us in our goal to achieve an extremely high quality MongoDB ecosystem by providing feedback and filling in the gaps in our documentation, examples and tutorials. Feature requests and bug reports are essential to the project’s future.
We’d love the Swift language to have coroutines, so if you’ve got some spare time be sure to help out by discussing this in the Swift compiler forums.