About this project

Apache CouchDB is an open-source database project under the Apache Software Foundation. It is described as a seamless multi-primary syncing database with an intuitive HTTP/JSON API, designed for reliability. The README focuses on installation, documentation, verification, development setup, and contribution guidance rather than detailing internal architecture. Installation instructions are split by platform: INSTALL.Unix covers Unix-like systems including macOS and Ubuntu, while INSTALL.Windows covers Microsoft Windows. Users are directed to follow the appropriate guide for their system. If problems occur, the README points to a troubleshooting section in the official documentation. Documentation is hosted at docs.couchdb.org and includes a changelog under the "whatsnew" section. Troubleshooting guidance for cryptic error messages is available in the install/troubleshooting page. For general help, the project points to its mailing lists and an IRC channel on Libera.Chat (#couchdb). The mailing lists are described as a source of support and knowledge, and the official website provides more information about community resources. To verify an installation, the README suggests running a basic test suite by browsing to the local Fauxton URL at http://127.0.0.1:5984/_utils/#verifyinstall. For development, the README offers two paths. A quickstart uses a VS Code Remote - Containers badge that, when clicked, installs the Remote - Containers extension if needed, clones the source into a container volume, and starts a dev container. This devcontainer automatically runs ./configure && make on first creation, which may take extra time, but then allows running commands such as ./dev/run, ./dev/run --admin=admin:admin, ./dev/run --with-admin-party-please, and make check immediately. Subsequent startups are expected to be quick. The manual development setup is documented in README-DEV.rst. In short, developers install the needed dependencies listed in the install docs, then run ./configure && make. After compiling, make install is not required; instead, ./dev/run spins up three nodes. An optional haproxy caching layer can be added in front of the cluster with ./dev/run --with-haproxy --haproxy=/path/to/haproxy. The local cluster listens on port 5984. For Fauxton developers, the README notes that fixing the admin party does not work via the button in Fauxton; instead, run ./dev/run with the admin flag, for example ./dev/run --admin=username:password. Omitting the flag leaves an admin party. Contribution guidance is available in CONTRIBUTING.md in the repository. The README also acknowledges project supporters, including IBM Cloudant, MacStadium, Neighbourhoodie, DigitalOcean, and netcup, with logos and links. A cryptographic software notice explains that the distribution includes cryptographic software and that local laws may restrict import, possession, use, or re-export. It references the Wassenaar Arrangement for more information. The U.S. Department of Commerce Bureau of Industry and Security has classified the software as ECCN 5D002.C.1, covering information security software using or performing cryptographic functions with asymmetric algorithms. The Apache Software Foundation distribution form and manner make it eligible for export under License Exception ENC Technology Software Unrestricted (TSU) for both object code and source code. The README notes that CouchDB includes an HTTP client (ibrowse) with SSL functionality as part of the included cryptographic software.