Skip to main content

🛋 An asynchronous client library for CouchDB 2.x and 3.x

Project description

License PyPI version Python package codecov Documentation Status

aiocouch

An asynchronous client library for CouchDB 2.0 based on asyncio using aiohttp

Key features

  • All requests are asynchronus using aiohttp
  • Supports CouchDB 2.x and 3.x
  • Support for modern Python ≥ 3.7

Library installation

    pip install aiocouch

Getting started

The following code retrieves and prints the list of incredients of the apple_pie recipe. The incredients are stored as a list in the apple_pie aiocouch.document.Document, which is part of the recipe aiocouch.database.Database. We use the context manager aiocouch.CouchDB to create a new session.

    from aiocouch import CouchDB

    async with CouchDB(
        "http://localhost:5984", user="admin", password="admin"
    ) as couchdb:
        db = await couchdb["recipes"]
        doc = await db["apple_pie"]
        print(doc["incredients"])

We can also create new recipes, for instance for some delicious cookies.

        new_doc = await db.create(
            "cookies", data={"title": "Granny's cookies", "rating": "★★★★★"}
        )
        await new_doc.save()

For further details please refer to the documentation, which is available here on readthedocs.org.

Run examples

  • Setup the CouchDB URL and credentials using the environment variables
  • Install dependencies using pip install --editable '.[examples]'
  • run for instance python examples/getting_started.py

Run tests

  • Install dependencies using pip install --editable '.[tests]'
  • Setup the CouchDB URL and credentials using the environment variables (COUCHDB_HOST, COUCHDB_USER, COUCHDB_PASS)
  • run pytest --cov=aiocouch

Generate documentation

  • Install dependencies using pip install '.[docs]'
  • switch to the docs directory: cd docs
  • run make html

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

aiocouch-2.2.2.tar.gz (42.2 kB view details)

Uploaded Source

Built Distribution

aiocouch-2.2.2-py3-none-any.whl (33.6 kB view details)

Uploaded Python 3

File details

Details for the file aiocouch-2.2.2.tar.gz.

File metadata

  • Download URL: aiocouch-2.2.2.tar.gz
  • Upload date:
  • Size: 42.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.0 CPython/3.9.13

File hashes

Hashes for aiocouch-2.2.2.tar.gz
Algorithm Hash digest
SHA256 f4f654bf41b743f63d77cec0ceee3f773b4dd41e2078a5de46ab0d7778d86772
MD5 90b36d58f5d9d58345e19131433c0a3d
BLAKE2b-256 7b3a9eecc2498e55b42048f8f90bcde34b6ae31bdbc909a31cbe1e74cbf6f325

See more details on using hashes here.

File details

Details for the file aiocouch-2.2.2-py3-none-any.whl.

File metadata

  • Download URL: aiocouch-2.2.2-py3-none-any.whl
  • Upload date:
  • Size: 33.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.0 CPython/3.9.13

File hashes

Hashes for aiocouch-2.2.2-py3-none-any.whl
Algorithm Hash digest
SHA256 0bed6db2a274adee356620d8b1f7829507d027fbcdd71745e875662a349cbdd4
MD5 414d9121b47f7042524423b91110fe69
BLAKE2b-256 cd94faeb8766c3601a6771b20bcb83ae58225204805ccd60bb6dcbfd9d666bb3

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page