Skip to main content

couchbase-helper: A simple helper package for Couchbase operations

pypi package downloads versions Tests coverage licence


Intro

While the Couchbase packages is easy enough to use, sometimes it also just requires some boilerplate code which becomes tiring to duplicate every time you need to perform simple document operations. At least, that's what I thought. So, I started creating a simple re-usable script which later became a class and ... well, here's Couchbase Helper!

Couchbase Helper is currently rather basic and mostly/only support the following operations fully:

  • insert
  • insert_multi
  • upsert
  • upsert_multi
  • replace
  • replace_multi
  • get
  • get_multi
  • remove
  • remove_multi

It currently also has very basic functionality for view queries (view_query) which isn't all that fancy. Follow issue #18 for updates on this.

An N1ql (SQL++) helper class is also available, which provides chainable methods to create SQL++ queries to select from indexes.

Installation

Installation is as you're used to, using your favorite package manager:

$ pip install couchbase-helper
... or
$ uv add couchbase-helper
... or
$ poetry add couchbase-helper
... and so on

Examples

Basic operations

from couchbase_helper import CouchbaseHelper, Session

# Connect to Couchbase server/cluster
session = Session(
    hostname="localhost",
    username="username",
    password="password",
    bucket="bucket",
    timeout=10,
)
cb = CouchbaseHelper(
    session=session,
)

# Insert document
document = {
    "foo": "bar"
}
cb.insert("foo1", document)

# Get document
document = cb.get("foo1")
print(document["foo"])  # bar

# Update document
document["hello"] = "world"
cb.upsert("foo1", document)

# Replace a document
new_document = {
    "bar": "baz"
}
cb.replace("foo1", new_document)

SQL++/N1QL examples

from couchbase_helper import Session
from couchbase_helper.n1ql import N1ql

# Connect to Couchbase server/cluster
session = Session(
    hostname="localhost",
    username="username",
    password="password",
    bucket="bucket",
    timeout=10,
)
session.connect()
n1ql = N1ql(session=session)

# Select documents where foo=bar
rows = n1ql.where("foo=", "bar").rows()
for row in rows:
    ...

# You can also select specific columns, from a different bucket , scope, or even collection than the session's:
rows = n1ql.select("callsign").from_("travel-sample", "inventory", "airport").where("city=", "San Jose").or_where("city=", "New York").rows()
for row in rows:
    ...

Metadata

Release files for couchbase-helper 0.1.5

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for couchbase-helper 0.1.5
File Size Uploaded
couchbase_helper-0.1.5.tar.gz 21.1 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for couchbase-helper 0.1.5
File Interpreter ABI Platform
couchbase_helper-0.1.5-py3-none-any.whl Python 3 none any Details

Total release size: 40.2 kB

Release files / couchbase_helper-0.1.5.tar.gz

Download URL couchbase_helper-0.1.5.tar.gz
Size 21.1 kB
Tags Source
SHA-256 checksum
How to use checksums
e391474cf50641e5bd9ac620edf71acd8798c7e1726e85e0c6dcacff8be16176
BLAKE2b-256 checksum
How to use checksums
4938bba685d00f1a956e63cabee149490fe1a2a2456fb21d12ddc3937fdbdb33
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 23, 2026.

Transparency log

Release files / couchbase_helper-0.1.5-py3-none-any.whl

Download URL couchbase_helper-0.1.5-py3-none-any.whl
Size 19.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
9e09e7289387f01a94df0d8ee91420cfc9b8f0951a57e87d001a492fc8b5f4a4
BLAKE2b-256 checksum
How to use checksums
b8fd3ddf5ea2b1a0e621686d10dd32b229450b74a95579cf94c6e61730557f0a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 23, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.1.5 This release

2 release files

0.1.4

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page