This is an OCaml port of the python toy blockchain described in https://hackernoon.com/learn-blockchains-by-building-one-117428612f46
I ported this to build a bit of intuition about basic blockchain concepts and to practice the excellent OCaml language, which I haven't yet had an opportunity to use in the industry.
dune build
dune exec ./node.exe -- -p {PORT}
curl http://localhost:3000/chain
curl http://localhost:3000/chain/valid
curl --header "Content-Type: application/json" \
--request POST \
--data '{ "sender": "some-sender-address", "recipient": "some-recipient-address", "amount": 1 }' \
http://localhost:3000/transaction
curl --request POST http://localhost:3000/mine
curl --header "Content-Type: application/json" \
--request POST \
--data '{ "nodes": ["127.0.0.1:3001"] }' \
http://localhost:3000/nodes/register
curl --request POST http://localhost:3000/nodes/resolve