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

Uploaded Source

File details

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

File metadata

  • Download URL: calimero_client_py-0.6.26.tar.gz
  • Upload date:
  • Size: 54.8 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.26.tar.gz
Algorithm Hash digest
SHA256 9d73a08ac9eb5b5766ea21f4361a079bdae3be8c85f3144dfb3e6bfc7eaf687d
MD5 85907e0b3a05501d782817c24a01141d
BLAKE2b-256 3189d36346724b9e2c35b0d69a6e0530f852b3cd7bc02fd72cd2100f9585e1d7

See more details on using hashes here.

Provenance

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

This release

0.6.26 This release

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