• Stars
    star
    19
  • Rank 1,163,098 (Top 23 %)
  • Language
    Erlang
  • License
    MIT License
  • Created about 5 years ago
  • Updated 10 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

An Erlang/Elixir CouchDB client

CouchDB

Hex pm Build Status License

Erlang / Elixir library for Apache CouchDB or IBM Cloudant. CouchDB provides you a full featured and easy-to-use client to access and manage multiple nodes.


Prerequisites

  • Working C/C++ compiler in environment
  • Rebar3 or Mix

Usage

Most of the Erlang/Elixir CouchDB API takes Database or Server record as an argument. This record contains information about the server's FQDN, the database name, etc. Parts of the API dealing with 'the server' will take a server record, while functions performing actions on databases and documents take a database record. Consider:

{ok, Server} = couchdb:server_record(<<"http://localhost:5984">>, []).
{:ok, server} = :couchdb.server_record("http://localhost:5984", [])

After a server or database record has been created one can now make the first actual call:

{ok, Info} = couchdb_server:info(Server).
{:ok, info} = :couchdb_server.info(server)

Contribute

For issues, comments or feedback please create an issue.

Notes

V2.1.0 JSON library is now Jiffy

Version 2.1.0 switched to Jiffy as the JSON library. This fixes a bug with strings containing UTF-8 characters. Furthermore it improves performance and brings this CouchDB client closer to Apache CouchDB itself as it uses Jiffy too.

It should be noted that this change means a prerequisite is now introduced, the target environment must have a working C/C++ compiler.

Forked from Couchbeam

CouchDB is a a fork of [couchbeam](http://github.com/benoitc/couchbeam. Backwards incompatible API changes have been introduced as well as a complete new structure. Therefore the decision was made to release this version under a new name: CouchDB.

Semantic versioning

To comply with Semantic Versioning the version number has been bumped to 2.0.0.

New uuid implementation

In Beta6 the original Apache CouchDB uuid implementation was added.