Database guides
Apache CouchDB
A document store whose entire API is HTTP and JSON. Unrelated to Couchbase beyond the name.
Apache CouchDB is a document database where every database, document and view is a URL and every response is JSON. AddisDB talks to it over that REST API directly.
Who it is for
CouchDB’s distinguishing feature is replication — bidirectional, conflict-aware sync between servers and between a server and a client. That makes it a natural fit for offline-capable and edge applications, where a device holds its own copy and reconciles later.
It stores schemaless JSON documents, each with an _id and a revision (_rev). Queries are either Mango selectors, which read like MongoDB filters, or map/reduce views defined in design documents.
Set up the server
- Note the host and port — 5984 for HTTP, 6984 for HTTPS.
- Note an admin username and password. A CouchDB in “admin party” mode has none, but any real deployment will.
- Optionally note a database to scope the tree to; leaving it blank shows every non-system database on the server.
curl -u admin:PASSWORD http://localhost:5984/_all_dbs
Connect from AddisDB
- New Connection → Apache CouchDB. Port prefills to 5984 and username to admin.
- Enter the host and credentials.
- Optionally enter a database to focus on. Test, then Save.
What AddisDB gives you
The query editor accepts three forms. Typing a bare database name lists its documents. Typing a JSON object runs it as a Mango selector against the connection’s database. Writing a full request — GET /_all_dbs, or POST /orders/_find with a body — reaches anything else the API exposes.
Documents are flattened into the grid, so _id and _rev appear as ordinary columns beside each document’s own fields. The schema tree lists databases and infers their columns by sampling real documents, which is the honest answer for a store with no declared schema.
The Live Monitor reports document counts and data size per database, which is enough to drive size alerts. It does not show sessions: CouchDB’s _active_tasks lists compaction and replication jobs rather than client connections, and there is nothing there a user could cancel.