PyWaves-CE is a community-maintained fork of the original PyWaves library for the Waves blockchain.
It is a drop-in replacement that keeps the import path pywaves intact, so existing code keeps working without edits.
pip install pywaves-ceimport pywaves as pw
# Create addresses from seeds
firstAddress = pw.Address(seed = 'this is just a simple test seed 1')
secondAddress = pw.Address(seed = 'this is just a simple test seed 2')
# Send Waves from one address to another
tx = firstAddress.sendWaves(secondAddress, 100000)
assert 'id' in tx
# Wait for transaction to complete and verify status
tx = pw.waitFor(tx['id'])
assert tx['applicationStatus'] == 'succeeded'- Unmaintained upstream – the original PyWaves no longer receives updates.
- Drop-in replacement – legacy code keeps using
import pywaves as pwunchanged. - Active maintenance – security fixes and new Waves features are delivered regularly.
- Repository layout – PyWaves-CE hosts the pristine 1.0.5 upstream snapshot.
- PyPI distribution – published as pywaves-ce while the internal package name remains
pywaves. - Versioning roadmap
- 1.x – strict legacy API compatibility with upstream 1.0.5.
- 2.x – modernization and intentional breaking changes.
Code released under the MIT License.
PyWaves uses Poetry for dependency management and packaging.
- Install Poetry (if not already installed)
pip install poetry- Install dependencies
poetry install- Activate the virtual environment
poetry shellpoetry buildThis will create both wheel and source distributions in the dist/ directory.
PyWaves includes a workflow testing system that can test across multiple Python versions:
python workflow_venvs.py
python workflow_tests.pyThis will test the library with all Python versions specified in PYTHON_VERSIONS.py.