The team behind Fauna built the database they wished they'd had at Twitter. Xmartlabs developed the idiomatic Swift driver that made Fauna a first-class citizen across iOS, macOS, tvOS, and watchOS for enterprise-scale apps.
Services
Technical consulting, Mobile development
Engagement
2 months
Platform
iOS
FaunaDB is a mission-critical component for companies that need to deliver products at global scale, increase infrastructure utilization, decrease operational overhead, and improve time to market.
Drawing from their experience scaling Twitter infrastructure, the team behind Fauna set out to build the database they would have used then. Fauna lets digital businesses comprehensively address the requirements of modern applications, without sacrificing agility. Enterprises adopting FaunaDB include NVIDIA, as well as industry leaders in data-rich industries such as social, mobile, SaaS, IoT, and gaming.
Fauna wanted to build a Swift driver to improve the experience of their clients integrating the database into their Swift projects. Developers should be able to take advantage of the Fauna query language and data model, as first class citizens in Swift. The purpose of this project was to provide a developer-friendly and idiomatic Swift driver on top of the Fauna API.


We set out to build an idiomatic Swift driver taking full advantage of the Swift language capabilities. The driver core is a type-safe query language that consists in embedded DSLs which are relayed to the Fauna API. When interacting with the API, data entities in API requests are encoded/decoded into Swift model types. Requests are performed asynchronously over https, and the driver handles the database errors and exceptions.
Fauna Swift driver has automated test coverage and a continuous integration setup. It supports the different platforms within the Apple ecosystem: iOS, Mac, tvOS and watchOS. The Swift driver is available as an Open Source library in github, check it out!

Based on our experience building development tools with Swift, Xmartlabs was a natural fit for this project. We were able to build an idiomatic interface to enable a seamless integration of Fauna within iOS apps.