The Python Client SDK for Diem
Project description
The official Diem Client SDK for Python.
Pypi package
https://pypi.org/project/diem/
Examples
>>> from diem import jsonrpc, testnet
>>> client = jsonrpc.Client(testnet.JSON_RPC_URL)
>>> client.get_metadata()
version: 3300304
timestamp: 1601492912847973
chain_id: 2
You can find more examples under the examples directory:
Note: make test runs all examples too, see the Makefile for details.
Off-chain service example
Checkout MiniWallet implementation for off-chain service implementation example.
MiniWallet and MiniWallet Test Suite
See mini_wallet.md
Build & Test
make init
make test
run specific test:
make test t=<test file / test name match pattern>
run with local docker testnet (requires initializing diem submodule):
make test t=<test file / test name match pattern> dt=1
Re-generate diem_types, stdlib, jsonrpc response data structures
git submodule update --init diem
cd diem
git pull origin main
cd ..
make gen
Modules Overview
SPEC = specification
DIP-X = Diem Improvement Protocol
Root module name: diem
Sub-modules:
jsonrpc: diem JSON-RPC APIs client and API response types. SPECstdlib: generated code, move stdlib script utils for constructing transaction script playload.diem_types: generated code, Diem on-chain data structure types for encoding and decoding BCS data.utils: utility functions, account address utils, currency code, hashing, hex encoding / decoding, transaction utils.AuthKey|auth_key: auth key utilsidentifier: Diem Account Identifier and Diem Intent Identifier. DIP-5txnmetadata: utils for creating peer to peer transaction metadata. DIP-4testnet: Testnet utility, minting coins, create Testnet client, chain id, Testnet JSON-RPC URL.testing: Testing utility, MiniWallet application, MiniWallet test suites,LocalAccountfor managing local account keys and generating random local account.chain_ids: list of static chain ids
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file diem-1.7.1.tar.gz.
File metadata
- Download URL: diem-1.7.1.tar.gz
- Upload date:
- Size: 160.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.1 importlib_metadata/4.6.0 pkginfo/1.7.0 requests/2.20.0 requests-toolbelt/0.9.1 tqdm/4.61.1 CPython/3.9.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f76b805361388c2fb9d49fec68eca1bad5288cc2c2b86382b278608e2d529fa8
|
|
| MD5 |
b07ee946d469cc19451b1b756dd6c226
|
|
| BLAKE2b-256 |
81d2399e995c3d22f048a5d2d5452d8f9b7b27e1a8d6071013de6d0167280bc2
|
File details
Details for the file diem-1.7.1-py3-none-any.whl.
File metadata
- Download URL: diem-1.7.1-py3-none-any.whl
- Upload date:
- Size: 195.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.1 importlib_metadata/4.6.0 pkginfo/1.7.0 requests/2.20.0 requests-toolbelt/0.9.1 tqdm/4.61.1 CPython/3.9.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
af316046fc60340259f63566ab4eca0b3b1e917defa45dd307050e065ac6dd95
|
|
| MD5 |
67f61dcf05e510910adacb24adcf0991
|
|
| BLAKE2b-256 |
78a414248e94ab718f842fba009102e2fc9daa167c68cc120bbf17afc38878f2
|