mirror of
https://github.com/donl/slouch.git
synced 2026-05-26 06:12:11 -06:00
A JS client for CouchDB that does the heavy lifting
* doc(readme): clean up reasons * doc(motto) * test(db-and-doc): more coverage * test(create-or-update-ignore-conflict) * test(upsert) * test(ignore-missing) * test(post-and-ignore-conflict) * test(get-merge-put) * refactor(all): rename post and put * test(get-merge-create-or-update) * test(get-merge-update-ignore-conflict) * test(get-merge-upsert) * test(get-modify-upsert) * refactor(doc): redundant code * test(destroy-ignore-conflict) * test(get-and-destroy) * test(mark-as-destroyed) * test(set-destroyed) * refactor(attachment) * test(doc): 100% coverage * test(attachment): create with base 64 * test(attachment): clean up binary code * test(attachment): get * test(attachment): destroy * test(system): is couchdb 1 * test(system): get * test(system): reset * test(updates) * test(updates) * test(all): unique DB names * test(system): reactivate tests * test(user): add role * test(user): downsert role * feat(stream-iterator): indefinite * test(user): 100% coverage * test(request-class) * test(request-class): 100% coverage * test(config) * test(config): more coverage * test(config): more coverage * test(config): 100% coverage * test(all): 100% coverage * refactor(beautify) * test(coverage): enforce 100% * test(system): fix race condition * test(user): shortcut for browser * test(updates): test continuous stream in phantomjs * test(updates): test continuous stream in phantomjs * test(continuous): mock for phantomjs * test(system): abort iterators * test(system): fake abort |
||
|---|---|---|
| cache | ||
| scripts | ||
| test | ||
| .gitignore | ||
| .jshintrc | ||
| .npmignore | ||
| beautify.json | ||
| circle.yml | ||
| enable-cors.sh | ||
| index.js | ||
| LICENSE | ||
| package.json | ||
| README.md | ||
| reset-db.js | ||
| run-couchdb-docker.sh | ||
| TESTING.md | ||
slouch
An API for CouchDB that does the heavy lifting
Slouch is a good alternative to nano as:
- You don't have to create an instance for each DB
- Supports native promises
- Supports iterators
- Automatically throttles connections to DB to avoid max_dbs_open errors
- Automatically persists connections with exponential backoff in case DB restarts or connection is dropped
- Works in node and in the browser
- Provides upserts and "get and update" functions
- Support for optionally ignoring conflicts, missing docs, etc...
- Designed for both CouchDB 1 and CouchDB 2
Install
$ npm install couch-slouch