# Documentation structure - [FAQ][faq.md] - Frequently Asked Questions - [build](build.md) - Explaining how to build and run the Grin binaries - [chain_sync](chain/chain_sync.md) - About how Grin's blockchain is synchronized - [blocks_and_headers](chain/blocks_and_headers.md) - How Grin tracks blocks and headers on the chain - [contractideas](contractideas.md) - Ideas on how to implement contracts - [grin4bitcoiners](grin4bitcoiners.md) - Explaining grin from a bitcoiner's perspective - [internal/pool](internal/pool.md) - Technical explanation of the transaction pool - [intro](intro.md) - Technical introduciton to grin - [local_net](local_net.md) - Technical explanation of how to test Grin locally, simulating several peers, for full integration testing and network simulations - [merkle](merkle.md) - Technical explanation of grin's favorite kind of merkle trees - [pruning](pruning.md) - Technical explanation of pruning - [rangeproofs](rangeproofs.md) - Technical explanation of range proofs - [style](style.md) - About code formatting - [wallet](wallet.md) - Explains the wallet design and `grin wallet` sub-commands