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

Uploaded Source

File details

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

File metadata

  • Download URL: calimero_client_py-0.6.27.tar.gz
  • Upload date:
  • Size: 54.4 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.27.tar.gz
Algorithm Hash digest
SHA256 adcc3a58ffe968d5a795572d937c459b6e2ab927088549634c3bbe3a3bc2de32
MD5 7a7413fe35403b66004c4ea598156cd8
BLAKE2b-256 a567b6f87436903584e95cd7a6425a7589ff3138c4b799e9a8563911db13b055

See more details on using hashes here.

Provenance

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

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

This release

0.6.27 This release

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