Master Substrate
My self-learning course for mastering Substrate
- Blockchain basics
- Why Substrate?
- Architecture
- Networks and blockchains
- Runtime development
- Consensus
- Transactions and block basics
- Transaction Lifecycle
- State transitions and storage
- Accounts, addresses and keys
- Rust for Substrate
- Offchain Operations
- Introduction to libraries
- Build process
- Runtime storage
- Transactions, weights and fees
- Custom pallets
- Pallet coupling
- Events and errors
- Randomness
- Chain specification
- Priviledged calls and origins
- Remote procedure calls
- Application development
- Upgrade the runtime
- Import a pallet
- Configure runtime constants
- Configure genesis state
- Customize a chain specification
- Use helper functions
- Mint primitive tokens
- Add the contracts pallet
- Implement lockable currency
- Incorporate randomness
- Configure crowdfunding
- Create a storage structure (struct)
- Use tight pallet coupling
- Use loose pallet coupling
- Convert a solo chain
- Connect to a relay chain
- Select collators
- Prepare to launch
- Runtime upgrades
- Auctions and crowdloans
- Add HRMP channels
- Use try-runtime
- Create a txwrapper for a chain
- Use REST endpoints to get chain data
- Verify a Wasm binary
- Glossary
- Runtime APIs
- FRAME pallets
- Frame macros
- Account data structures
- Type encoding(SCALE)
- Transaction formats
- Cryptography
"Practice makes perfect"
- Build a local blockchain
- Simulate a network
- Add trusted nodes
- Authorize specific nodes
- Monitor node metrics
- Upgrade a running network
- Add a pallet to the runtime
- Configure the contracts pallet
- Use macros in a custom pallet
- Specify the origin for a call
- Publish custom pallets
- Prepare your first contract
- Develop a smart contract
- Use maps for storing values
- Build a token contract
- Troubleshoot smart contracts
Substrate Developer Hub - tutorials (Stale, not recommended)
- add a pallet
- build a dapp
- create your first substrate chain
- pallet in own crate
- start a private network