ironcorelabs / davenport

A principled CouchBase library for Scala

Website GitHub

Build Status Maven Central codecov.io Codacy Badge MIT Open Source License Stories In Progress scaladoc

Davenport - A principled Couchbase library for Scala

Davenport brings Free Monads to interactions with Couchbase. You don't need to know or understand what these are as they can remain under the hood. The key takeaway is that you assemble together a set of functions and database operations, but you delay execution of this. When you're ready, you pass the set of instructions to a connection. We currently support an in-memory Map and Couchbase as connections. This makes testing and reasoning about your database operations far simpler.

There are other libraries for interfacing with Couchbase from scala that we're aware of:

These are perfectly good libraries and you should evaluate them. This library takes a different approach, which has its pluses and minuses, as described in the Benefits and Drawbacks section of this README. In summary, this is a new project and light on advanced Couchbase features, but strong on composability and testability. You can parallelize things as well using composable scalaz Tasks as desired.

More Information


Copyright (c) 2015 IronCore Labs

Licensed under the MIT Open Source License