Algorand SDK in Python
Project description
py-algorand-sdk
A python library for interacting with the Algorand network.
Installation
Run $ pip3 install py-algorand-sdk
to install the package.
Alternatively, choose a distribution file, and run $ pip3 install [file name]
.
Supported Python versions
py-algorand-sdk's minimum Python version policy attempts to balance several constraints.
- Make it easy for the community to use py-algorand-sdk by minimizing or excluding the need to customize Python installations.
- Provide maintainers with access to newer language features that produce more robust software.
Given these constraints, the minimum Python version policy is: Target Python version on newest Ubuntu LTS released >= 6 months ago.
The rationale is:
- If a major Linux OS distribution bumps a Python version, then it's sufficiently available to the community for us to upgrade.
- The 6 month time buffer ensures we delay upgrades until the community starts using a recently released LTS version.
SDK Development
Install dependencies
pip3 install -r requirements.txt
Run tests
make docker-test
Set up the Algorand Sandbox based test-harness without running the tests
make harness
Format code
black .
Update algosdk/__init__.pyi
which allows downstream developers importing algosdk
and using VSCode's PyLance to have improved type analysis
make generate-init
Lint types
make mypy
(ormypy algosdk
)
Check all lints required by the C.I. process
make lint
Run non-test-harness related unit tests
make pytest-unit
Quick start
Here's a simple example you can run without a node.
from algosdk import account, encoding
# generate an account
private_key, address = account.generate_account()
print("Private key:", private_key)
print("Address:", address)
# check if the address is valid
if encoding.is_valid_address(address):
print("The address is valid!")
else:
print("The address is invalid.")
Node setup
Follow the instructions in Algorand's developer resources to install a node on your computer.
You can also set up a local Algorand Sandbox with make harness
.
Running examples/example.py
Before running example.py, start kmd on a private network or testnet node:
./goal kmd start -d [data directory]
Next, create a wallet and an account:
./goal wallet new [wallet name] -d [data directory]
./goal account new -d [data directory] -w [wallet name]
Visit the Algorand dispenser and enter the account address to fund your account.
Next, in tokens.py, either update the tokens and addresses, or provide a path to the data directory. Alternatively, tokens.py
also defaults to the sandbox harness configurations for algod and kmd, which can be brought up by running make harness
.
You're now ready to run example.py!
Documentation
Documentation for the Python SDK is available at py-algorand-sdk.readthedocs.io.
License
py-algorand-sdk is licensed under an MIT license. See the LICENSE file for details.
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
Hashes for py_algorand_sdk-2.1.2-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 58a4fa8695b43595cf9a80f30a8ab77dde19a49a6b6a0cf0ba604cd45c18bf52 |
|
MD5 | b89e1c7c1f008fe1e68deb31451b45c9 |
|
BLAKE2b-256 | a254d778c86c6a176c2368a81b949fffb989a64cf25b576a8e7e44da2a2d9bf2 |