You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
Jae Kwon da8e25343c Added LastBlockParts to state, and also validates. 10 years ago
binary IAVLTree supports Codec. 10 years ago
blocks Added LastBlockParts to state, and also validates. 10 years ago
common Validation tests 10 years ago
config basic main.go completion 10 years ago
consensus Added LastBlockParts to state, and also validates. 10 years ago
crypto go fmt 11 years ago
db ... 10 years ago
docs . 11 years ago
mempool basic main.go completion 10 years ago
merkle Add PartSet test. 10 years ago
p2p BitArray sub fix 10 years ago
rpc created "Node" 11 years ago
sim everything but binary, common, and blocks are explicitly imported. 10 years ago
state Added LastBlockParts to state, and also validates. 10 years ago
.gitignore numeric fields are all native unboxed. 10 years ago
README.md fix tests 10 years ago
gen_account.go consensus cleanup, privValidator config 10 years ago
log.go state save/load test. 10 years ago
tendermintd.go BitArray sub fix 10 years ago

README.md

TenderMint - proof of concept

  • p2p: P2P networking stack. Designed to be extensible.
  • merkle: Immutable Persistent Merkle-ized AVL+ Tree, used primarily for keeping track of mutable state like account balances.
  • blocks: The blockchain, storage of blocks, and all the associated structures.
  • state: The application state, which is mutated by blocks in the blockchain.
  • consensus: The core consensus algorithm logic.
  • mempool: Handles the broadcasting of uncommitted transactions.
  • crypto: Includes cgo bindings of ed25519.

Development Status

  • Testnet pending
  • Blockchain catchup now
  • Bootstrapping complete
  • Mempool complete
  • Consensus complete
  • Block propagation sidelined
  • PEX peer exchange complete
  • p2p/* *complete*
  • Ed25519 bindings complete
  • merkle/* *complete*

Issues

  • merkle/* does not free old children nodes. Implement something memory-aware that makes merkle/* act like a weakly referenced map.