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.32.tar.gz (61.0 kB view details)

Uploaded Source

File details

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

File metadata

  • Download URL: calimero_client_py-0.6.32.tar.gz
  • Upload date:
  • Size: 61.0 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.32.tar.gz
Algorithm Hash digest
SHA256 76a7027d4cf6737d62f08a934daf27c57dcadf598d56814731cc554781af4c7e
MD5 5ae9bf64e4bdd496ab751df98d38b94b
BLAKE2b-256 97b86b35f46b02a2a0deb930e0d32a3e914e977379c09942b68bf73ac89a72a0

See more details on using hashes here.

Provenance

The following attestation bundles were made for calimero_client_py-0.6.32.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

0.6.33

1 file

This release

0.6.32 This release

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