Skip to main content

Python based ABCI Server for Tendermint

Project description

Build blockchain applications in Python for Tendermint

Version

Supports ABCI v0.15.0 and latest Tendermint (0.26.0)

Installation

Requires Python >= 3.6.5

pip install tm-abci OR python setup.py install

Generating Protobuf

ONLY needed for developing this code base, not to create apps. If you just want to create apps, goto Getting Started

  1. Update all .proto files (protobuf dir)

  2. Install protoc

  3. Install go

  4. Install gogo protobuf via go

  5. Run make gogo

Or using Docker container:

  1. Update all .proto files (protobuf dir)

  2. Build image:sudo docker build -t abcidev .

  3. Run container: sudo docker run -it abcidev sh

  4. Inside container run: make gogo

Testing with tm-bench

Use this if you want to test throughput of server and application. By default, dummpy app is used, you can change it in docker-compose.yml, abci command section (before build).

  1. Build tm-bench and move to tm-abci directory (you can get it here)

  2. Change testing config in tm-bench command section of docker-compose.yml

  3. Run sudo docker-compose -f docker-compose.yml up -d

  4. Wait about minute (or more/less if you changed default) and run sudo docker-compose -f docker-compose.yml logs --tail 50 tm-bench

Getting Started

  1. Extend the BaseApplication class

  2. Implement the Tendermint ABCI callbacks - see https://github.com/tendermint/abci

  3. Run it

See the example app counter.py application under the examples directory here: https://github.com/SoftblocksCo/tm-abci/blob/master/examples/counter.py

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

tm-abci-0.6.3.tar.gz (22.0 kB view details)

Uploaded Source

Built Distribution

tm_abci-0.6.3-py3-none-any.whl (26.6 kB view details)

Uploaded Python 3

File details

Details for the file tm-abci-0.6.3.tar.gz.

File metadata

  • Download URL: tm-abci-0.6.3.tar.gz
  • Upload date:
  • Size: 22.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.19.1 setuptools/20.7.0 requests-toolbelt/0.8.0 tqdm/4.19.4 CPython/3.5.2

File hashes

Hashes for tm-abci-0.6.3.tar.gz
Algorithm Hash digest
SHA256 3833cfb1084effae39e44bbf4c256ea878cd2b8bb459fbca504c3a6b3e8b58e7
MD5 684e9348cef4b39ae46e8a6f82f04ac0
BLAKE2b-256 7e2800782a917fe71c8458f29b45baf9e1137a39d1e0a78db0b990b88eefb73e

See more details on using hashes here.

File details

Details for the file tm_abci-0.6.3-py3-none-any.whl.

File metadata

  • Download URL: tm_abci-0.6.3-py3-none-any.whl
  • Upload date:
  • Size: 26.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.19.1 setuptools/20.7.0 requests-toolbelt/0.8.0 tqdm/4.19.4 CPython/3.5.2

File hashes

Hashes for tm_abci-0.6.3-py3-none-any.whl
Algorithm Hash digest
SHA256 a0d3ccb44a3253a09a7fa308933f4e107467be3b6668f049f8bd3ef8b6709a63
MD5 8b50028c65ccf803829017bebbca89d7
BLAKE2b-256 4ec8160d222cdadd59ff4e655403819b52377b4d5e1c13e38eff48940dd114ec

See more details on using hashes here.

Supported by

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