Bearcoin
Usage
Complie and run
go run main.go --mode=<choose 'html' or 'rest'>[required] --port=<port>[required]
Documentation
godoc -http=:6060
Testing
Prints a summary of the test results
go test ./... -v
Displays test coverage results
go test -v -coverprofile cover.out ./... && go tool cover -html=cover.out
Goals
- Understand blockchain
- Create blockchain
- What makes up hash
- What makes up mining
- What makes up block
- Build explorer of blocks
- Create a JSON API to explore blockchain to interact with blockchain
- How we can have coins in blockchain
- Why blockchains are so good if you want to have coins
- Why, and how we can protect internet money using a blockchain + why it is good idea
- Learn about transactions (transaction input, transaction output) with owner those coins
- Learn about wallet modules
- Security, validations
- How we can communicate between nodes in our network to decentralize peer to peer network for sharing blockchain to people
And this coin is useless and valueless, it is only for understanding coin and blockchain technology.
Language
Database
Concepts
Mempool
Mempool(Memory pool) is a place where we put all the unconfirmed transactions. The transactions are confirmed when miners the people making blocks include the transactions into the block.
- The miners find a block. (mining)
- The miners go to mempool, and they put unconfirmed transactions into the block.
- Transactions are confirmed.