NOTE: This documentation is a work-in-progress!
-
- Overview - An overview of the Cosmos-SDK
- The Object-Capability Model - Security by least-privilege
- Application Architecture - Layers in the application architecture
-
Install - Install the library and example applications
-
- Introduction - Intro to the tutorial
- App1 - The Basics
- App2 - Transactions
- Amino - Amino is the primary serialization library used in the SDK
- Ante Handler - The AnteHandler authenticates transactions
- App3 - Modules: Auth and Bank
- auth.Account - Accounts are the prototypical object kept in the store
- auth.AccountMapper - AccountMapper gets and sets Account on a KVStore
- auth.StdTx -
StdTx
is the default implementation ofTx
- auth.StdSignBytes -
StdTx
must be signed with certain information - auth.AnteHandler - The
AnteHandler
verifiesStdTx
, manages accounts, and deducts fees - bank.CoinKeeper - CoinKeeper allows for coin transfers on an underlying AccountMapper
- App4 - ABCI
- ABCI - ABCI is the interface between Tendermint and the Cosmos-SDK
- InitChain - Initialize the application store
- BeginBlock - BeginBlock runs at the beginning of every block and updates the app about validator behaviour
- EndBlock - EndBlock runs at the end of every block and lets the app change the validator set.
- Query - Query the application store
- CheckTx - CheckTx only runs the AnteHandler
- App5 - Basecoin -
- Directory Structure - Keep your application code organized
- Tendermint Node - Run a full blockchain node with your app
- Clients - Hook up your app to CLI and REST interfaces for clients to use!
-
- Running a Node - Run a full node!
- Key Management - Managing user keys
- CLI - Queries and transactions via command line
- REST - Queries and transactions via REST API