Seamless multi-primary syncing database with an intuitive HTTP/JSON API, designed for reliability https://couchdb.apache.org/
Find a file
Nick Vatamaniuc 04ec067cfd Upgrade rebar3 and erlfmt
And also add pins to Windows' configure file well
2026-03-18 19:25:27 -04:00
.devcontainer update devcontainer 2026-02-11 18:28:59 +00:00
.github Update PULL_REQUEST_TEMPLATE.md 2026-01-30 15:28:55 +00:00
bin Merge branch '1843-feature-bigcouch' 2014-07-10 15:49:00 +01:00
build-aux ci: Enable parallel EUnit tests on CI workers (#5914) 2026-03-14 17:47:29 +01:00
config Fix elixir :logger warnings 2022-07-28 09:23:34 +02:00
dev optionally disable the clouseau node check 2026-03-13 15:04:49 +00:00
extra/nouveau update nouveau indexes with bulk request for performance 2026-03-12 13:23:04 +00:00
rel config toggle between serial and parallel worker startup 2026-03-12 11:31:43 +00:00
share/server Include useful context when logging a bad reduction 2025-11-10 22:41:11 +00:00
src fix: Make text search handle sort fields with the new selector structure 2026-03-18 14:01:27 +00:00
support Import nouveau (#4291) 2023-04-22 13:45:03 +00:00
test feat: Add the ability for VDUs to be written as Mango selectors 2026-03-12 10:14:58 +00:00
.asf.yaml Protect 3.5.x branch 2025-05-05 14:04:25 -04:00
.credo.exs Update fast_pbkdf2 to upstream d079c45 (#4944) 2024-01-04 08:22:45 +01:00
.elp.toml Fix typo in .elp.toml 2025-10-29 15:42:33 -04:00
.formatter.exs Minimal ExUnit setup 2019-07-29 11:24:37 +00:00
.gitattributes nouveau: set up .gitattributes 2024-02-15 09:48:11 +00:00
.gitignore setup with mise 2026-02-11 18:28:59 +00:00
.mailmap Integrate Sphinx into autotools 2012-12-11 14:10:52 +01:00
.readthedocs.yaml Update Sphinx/RTD dependencies (#4946) 2024-01-04 22:18:57 +01:00
BUGS.md Update README Jenkins link and minor misc. cleanup 2017-08-18 15:15:15 -04:00
COMMITTERS.md Various top-level directory cleanups 2018-03-27 14:28:00 -04:00
configure Upgrade rebar3 and erlfmt 2026-03-18 19:25:27 -04:00
configure.ps1 Upgrade rebar3 and erlfmt 2026-03-18 19:25:27 -04:00
CONTRIBUTING.md doc: add AI policy h/t @dch 2025-06-13 12:27:52 +02:00
CONTRIBUTORS.in Moving THANKS.in to CONTRIBUTORS.in 2014-10-30 17:15:33 +01:00
erlang_ls.config improve erlang_ls.config 2021-12-08 11:50:07 +00:00
INSTALL.Unix.md doc: update install instructions 2025-10-02 20:38:43 +02:00
INSTALL.Windows.md Remove JS tests + support for harness (#3197) (#3203) 2020-10-07 19:11:59 -04:00
LICENSE Implement parallel preads 2025-02-19 18:07:18 -05:00
make.cmd Mango test suite Windows fixes, closes #1732 2018-11-13 16:42:23 -05:00
Makefile Use a more reliable "in release" checking method 2026-03-13 00:24:57 -04:00
Makefile.win fix: Nouveau directory moving on Windows 2026-01-20 06:12:34 +01:00
mise.toml add sbt to mise for clouseau building 2026-03-13 10:21:55 +00:00
mix.exs Pin credo 2026-03-05 05:08:08 -05:00
NOTICE Updated year in NOTICE 2025-01-02 09:30:06 +01:00
README-DEV.rst doc: explain parallel make feature 2025-12-06 15:01:03 +01:00
README.rst Showing sponsors (#5430) 2025-03-08 00:18:29 +01:00
rebar.config.script Bump jiffy to 1.1.3 2026-03-03 00:41:50 -05:00
setup_eunit.template Improve parallel test runs 2025-12-23 01:27:08 -05:00
version.mk Merge 3.5.1 change to main 2025-11-09 08:15:38 -05:00

Apache CouchDB README
=====================

+---------+
| |1| |2| |
+---------+

.. |1| image:: https://ci-couchdb.apache.org/job/jenkins-cm1/job/FullPlatformMatrix/job/main/badge/icon?subject=main
    :target: https://ci-couchdb.apache.org/blue/organizations/jenkins/jenkins-cm1%2FFullPlatformMatrix/activity?branch=main
.. |2| image:: https://readthedocs.org/projects/couchdb/badge/?version=latest
    :target: https://docs.couchdb.org/en/latest/?badge=latest

Installation
------------

For a high-level guide to Unix-like systems, inc. Mac OS X and Ubuntu, see:

    INSTALL.Unix

For a high-level guide to Microsoft Windows, see:

    INSTALL.Windows

Follow the proper instructions to get CouchDB installed on your system.

If you're having problems, skip to the next section.

Documentation
-------------

We have documentation:

    https://docs.couchdb.org/

It includes a changelog:

    https://docs.couchdb.org/en/latest/whatsnew/

For troubleshooting or cryptic error messages, see:

    https://docs.couchdb.org/en/latest/install/troubleshooting.html

For general help, see:

     https://couchdb.apache.org/#mailing-list

We also have an IRC channel:

    https://web.libera.chat/#couchdb

The mailing lists provide a wealth of support and knowledge for you to tap into.
Feel free to drop by with your questions or discussion. See the official CouchDB
website for more information about our community resources.

Verifying your Installation
---------------------------

Run a basic test suite for CouchDB by browsing here:

    http://127.0.0.1:5984/_utils/#verifyinstall

Getting started with developing
-------------------------------

**Quickstart:**


.. image:: https://img.shields.io/static/v1?label=Remote%20-%20Containers&message=Open&color=blue&logo=visualstudiocode
    :target: https://vscode.dev/redirect?url=vscode://ms-vscode-remote.remote-containers/cloneInVolume?url=https://github.com/apache/couchdb

If you already have VS Code and Docker installed, you can click the badge above or
`here <https://vscode.dev/redirect?url=vscode://ms-vscode-remote.remote-containers/cloneInVolume?url=https://github.com/apache/couchdb>`_
to get started. Clicking these links will cause VS Code to automatically install the
Remote - Containers extension if needed, clone the source code into a container volume,
and spin up a dev container for use.

This ``devcontainer`` will automatically run ``./configure && make`` the first time it is created.
While this may take some extra time to spin up, this tradeoff means you will be able to
run things like ``./dev/run``, ``./dev/run --admin=admin:admin``,  ``./dev/run --with-admin-party-please``,
and ``make check`` straight away.  Subsequent startups should be quick.

**Manual Dev Setup:**

For more detail, read the README-DEV.rst file in this directory.

Basically you just have to install the needed dependencies which are
documented in the install docs and then run ``./configure && make``.

You don't need to run ``make install`` after compiling, just use
``./dev/run`` to spin up three nodes. You can add haproxy as a caching
layer in front of this cluster by running ``./dev/run --with-haproxy
--haproxy=/path/to/haproxy`` . You will now have a local cluster
listening on port 5984.

For Fauxton developers fixing the admin-party does not work via the button in
Fauxton. To fix the admin party you have to run ``./dev/run`` with the ``admin``
flag, e.g. ``./dev/run --admin=username:password``. If you want to have an
admin-party, just omit the flag.

Contributing to CouchDB
-----------------------

You can learn more about our contributing process here:

    https://github.com/apache/couchdb/blob/main/CONTRIBUTING.md

Acknowledgments
---------------

This project is proudly supported by:

|3|

`IBM Cloudant <https://www.ibm.com/products/cloudant>`_

|5|

|6|

|7|

.. |3| image:: https://couchdb.apache.org/image/macstadium-logo.png
    :width: 150
    :target: https://www.macstadium.com
.. |5| image:: https://couchdb.apache.org/image/neighbourhoodie-logo-with-n.svg
    :width: 150
    :target: https://neighbourhood.ie/couchdb-support
.. |6| image:: https://opensource.nyc3.cdn.digitaloceanspaces.com/attribution/assets/PoweredByDO/DO_Powered_by_Badge_blue.png
    :width: 150
    :target: https://www.digitalocean.com
.. |7| image:: https://couchdb.apache.org/image/netcup_logo_RGB_color.svg
    :width: 150
    :target: https://www.netcup.com

Cryptographic Software Notice
-----------------------------

This distribution includes cryptographic software. The country in which you
currently reside may have restrictions on the import, possession, use, and/or
re-export to another country, of encryption software. BEFORE using any
encryption software, please check your country's laws, regulations and policies
concerning the import, possession, or use, and re-export of encryption software,
to see if this is permitted. See <https://www.wassenaar.org/> for more
information.

The U.S. Government Department of Commerce, Bureau of Industry and Security
(BIS), has classified this software as Export Commodity Control Number (ECCN)
5D002.C.1, which includes information security software using or performing
cryptographic functions with asymmetric algorithms. The form and manner of this
Apache Software Foundation distribution makes it eligible for export under the
License Exception ENC Technology Software Unrestricted (TSU) exception (see the
BIS Export Administration Regulations, Section 740.13) for both object code and
source code.

The following provides more details on the included cryptographic software:

CouchDB includes a HTTP client (ibrowse) with SSL functionality.