Skip to content

jepemo/basic-blockchain

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

78 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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.

About

Simple extendable Blockchain implemented in Python

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published