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

Uploaded Source

File details

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

File metadata

  • Download URL: calimero_client_py-0.6.24.tar.gz
  • Upload date:
  • Size: 54.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.24.tar.gz
Algorithm Hash digest
SHA256 8ac6cbf6a206b24040e8e53b40f505ba802582029a119983f11ef5c793cf21ad
MD5 8723aef062e098639391e5870032af33
BLAKE2b-256 2b8b98a6fa812fa4df6f330265cd927538bd42d5d4867ebb5efcb725e7518fdb

See more details on using hashes here.

Provenance

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

0.6.27

1 file

0.6.26

1 file

0.6.25

1 file

This release

0.6.24 This release

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