Skip to main content

Calimero Client Python Library

A Python client SDK for Calimero Network, backed by a native Rust core via PyO3. Connect to a node, manage applications and contexts, move blobs, administer namespaces and groups, and call your app's methods over JSON-RPC — all from synchronous Python.

Documentation

Full documentation is published at https://calimero-network.github.io/calimero-client-py/ — installation, quickstart, task guides, and the complete Python API reference. The source lives under docs/.

Installation

pip install calimero-client-py

The package is published as a source distribution (no prebuilt wheels), so installing compiles the native Rust extension on your machine. You need a Rust toolchain on PATH — install one with rustup if you don't already have cargo. Python 3.9+ is required. See the installation guide for details.

Quick start

Every Client method is synchronous: it blocks until the node responds and returns a plain Python value (a dict, list, bytes, or scalar). There are no coroutines and nothing to await.

from calimero_client_py import create_connection, create_client

connection = create_connection(
    api_url="http://localhost:2428",
    node_name="local-dev",  # stable name; used for the token cache
)
client = create_client(connection)

print("connected to", client.get_api_url())

contexts = client.list_contexts()
print(f"found {len(contexts)} contexts")

# call a method on the app running in a context (args is a JSON string)
result = client.execute_function(
    context_id="<context-id>",
    method="set",
    args='{"key": "greeting", "value": "hello"}',
)
print(result)

See the quickstart and guides for connecting, authentication, contexts, blobs, and namespaces & groups.

CLI

Installing the package puts a small calimero-client-py command on your PATH for quick checks:

calimero-client-py --version
calimero-client-py --base-url http://localhost:2428 list-contexts

See the CLI reference.

Development

Build from source with maturin:

pip install maturin
maturin develop --release        # compile the extension into the active venv
python -c "import calimero_client_py; print('ok', calimero_client_py.VERSION)"

Run the tests:

cargo test          # Rust unit tests
pytest              # Python tests

The Rust core depends on Calimero crates pulled from github.com/calimero-network/core, so the first build fetches and compiles those too (a network connection is required for the initial build).

Support

License

See LICENSE.

Download files

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

Source Distribution

calimero_client_py-0.6.33.tar.gz (60.9 kB view details)

Uploaded Source

File details

Details for the file calimero_client_py-0.6.33.tar.gz.

File metadata

  • Download URL: calimero_client_py-0.6.33.tar.gz
  • Upload date:
  • Size: 60.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for calimero_client_py-0.6.33.tar.gz
Algorithm Hash digest
SHA256 8d3332d73728fcc1dfc4d7bb2c8a13451311f9a5b805e4fe274673a4d239451d
MD5 6391ec3f8ab348d1de7bc9e14741b9c1
BLAKE2b-256 f1f510178e661cb6a63f600ca85896e5c4acfe726f5e179e326c979c0c6f3268

See more details on using hashes here.

Provenance

The following attestation bundles were made for calimero_client_py-0.6.33.tar.gz:

Publisher: build-wheels.yml on calimero-network/calimero-client-py

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

This release

0.6.33 This release

1 file

0.6.32

1 file

0.6.31

1 file

0.6.30

1 file

0.6.29

1 file

0.6.28

1 file

0.6.27

1 file

0.6.26

1 file

0.6.25

1 file

0.6.24

1 file

0.6.23

1 file

0.6.22

1 file

0.6.21

1 file

0.6.20

1 file

0.6.19

1 file

0.6.18

1 file

0.6.17

1 file

0.6.16

1 file

0.6.15

1 file

0.6.13

1 file

0.6.12

1 file

0.6.11

1 file

0.6.10

1 file

0.6.9

1 file

0.6.8

1 file

0.6.7

1 file

0.6.6

1 file

0.6.5

1 file

0.6.4

1 file

0.6.3

1 file

0.6.2

1 file

0.6.1

1 file

0.6.0

1 file

0.5.2

1 file

0.5.0

1 file

0.4.0

1 file

0.3.0

1 file

0.2.7

1 file

0.2.6

1 file

0.2.5

1 file

0.2.4

1 file

0.2.3

1 file

0.2.2

2 files

0.2.1

2 files

0.1.4

2 files

0.1.3

2 files

0.1.2

2 files

0.1.1

2 files

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page