Skip to main content

Second edition of Project Babbage, create a blockchain from scratch.

Project description

Babbagecoin

An understandable proof of work blockchain.

Visit our web page for a nice general overview of the project !

Quickly run a node !

pip install --user babbagecoin
python -m babbagecoin master
# then in another terminal:
python -m babbagecoin miner

For development

Requirements

Install docker and docker-compose, python3 (>=3.9) and poetry.

Run poetry install then poetry shell

Launch

Run the node (master + miner):

make

Stop the node properly:

make stop --> to stop all containers if you didn't stopped them properly (if you did two Ctrl+C in a row)

Or you can run separately the master or miner:

make (master | miner)

There are also VSCode actions for debugging each one of them (even the tests, run in terminal with make test)

Interact with the blockchain

!! Important

Configure your blockchain by creating a .env file on the same model as what's in .env.example.

The wallet will generate a private key for you, save it to private.key.<CURRENT_USER>, and reuse it afterward. A public key is derived from this private key. The hash of the public key is your address, for example e93417c7 (the first 8 characters). The wallet is managing only one private key at the time.

Transactions

Use the bbc.sh script (chmod +x it first):

./bbc.sh tx MARTIAL 10 0.3 --> sending 10BBC with 0.5BBC fees to MARTIAL

make tx is a shortcut for the above command

Balance

./bbc.sh balance to get your wallet balance

make balance is a shortcut for the above command

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

babbagecoin-0.5.0.tar.gz (47.1 kB view hashes)

Uploaded Source

Built Distribution

babbagecoin-0.5.0-py3-none-any.whl (50.9 kB view hashes)

Uploaded Python 3

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