bbchain

Simple extendable Blockchain implemented in Python


Keywords
blockchain, cryptocurrency, python
License
GPL-3.0
Install
pip install bbchain==0.1

Documentation

basic-blockchain

Basic cryptocurrency, based on blockchain, implemented in Python.

Getting Started

Installation

pip install bbchain

Use (default web implementation)

# Start (default port 8000)
bbchain --start

# Start with selected host/port
bbchain --start --host 127.0.0.1 --port 8002

# Select other nodes to connect
bbchain --start --nodes ip1:port1,ip2:port2

# Add data to the blockchain
bbchain --add "data to storage" --nodes ip1:port1

# Maintenance
## Clean local storage
bbchain --clean
## Show local data
bbchain --print

Development

git clone https://github.com/jepemo/basic-blockchain.git
cd basic-blockchain
python3 -m venv venv
source venv/bin/activate
pip install -e .

bbchain --help

Execute tests:

  python3 setup.py test

Some Blockchain implementation readings

Roadmap

  • More tests
  • Implement real consensus algorithms
  • Improve default http implementation (better sync, etc.)
  • Some examples: cryptocurrency, etc.
  • Allow to save non-textual data

License

GNU GPLv3

Permissions of this strong copyleft license are conditioned on making available complete source code of licensed works and modifications, which include larger works using a licensed work, under the same license. Copyright and license notices must be preserved. Contributors provide an express grant of patent rights.