Skip to main content

Pure Python NeoFS SDK and CLI

Project description

NeoFS Python SDK

A pure Python gRPC client and CLI for the NeoFS distributed storage network.

Architecture

This SDK interacts directly with NeoFS routing nodes via native gRPC streams. It relies on neo-mamba for N3 SECP256R1 cryptographic signing and NEP-2 wallet resolution, avoiding legacy C++ shared bindings.

To ensure parity with current network upgrades, the stubs map dynamically to the v2.21.0 API specification via generate_protos.py.

Requirements

  • Python 3.11+
  • Git (for cloning upstream protobuf contracts)

Setup

Initialize your environment and compile the bindings:

python -m venv venv
source venv/Scripts/activate
pip install -e .
python generate_protos.py

Usage

A standard CLI interface is provided for quick interaction with containers and objects natively against the Neo T5 Testnet nodes. Note that arguments are positioned sequentially.

# Initialize a container
neofs create-container wallet.json secret_password my_container

# Upload a local file
neofs upload data.json my_container wallet.json secret_password

# Retrieve an object by its ID
neofs download <object_id> my_container fetched_data.json wallet.json secret_password

Testing

The SDK includes an automated pytest suite that natively asserts the integrity of the CLI routing paths without requiring a manual mock wallet instantiation:

pip install pytest
pytest tests/

License

Apache 2.0

Project details


Download files

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

Source Distribution

neofs_python_sdk-0.1.0.tar.gz (54.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

neofs_python_sdk-0.1.0-py3-none-any.whl (89.9 kB view details)

Uploaded Python 3

File details

Details for the file neofs_python_sdk-0.1.0.tar.gz.

File metadata

  • Download URL: neofs_python_sdk-0.1.0.tar.gz
  • Upload date:
  • Size: 54.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.2

File hashes

Hashes for neofs_python_sdk-0.1.0.tar.gz
Algorithm Hash digest
SHA256 b4034cdf1dacbeb039162a00152f5689fb3522f8f54f56fc0f667954fac04295
MD5 8bd5c2e3bb0de095e00c998debfd2e40
BLAKE2b-256 5d88aaa8310f80dad43bb676cb1e2f73b7b7754ed06989358814e0fcebc8c8b6

See more details on using hashes here.

File details

Details for the file neofs_python_sdk-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for neofs_python_sdk-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 3d53334a12ec7c37f225682b4e67cf5255a4762384a9dfc0c332bde60cde1481
MD5 88fea6e2e5b3e37d4a7abf5903bc2aca
BLAKE2b-256 263a22fd60f5e91defa545198ea16a0ac0c877b9bde48b2f2df99d1cad7a434b

See more details on using hashes here.

Supported by

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