Module developer_hub::reference_docs
source · Expand description
Reference documents covering in-depth topics across the Polkadot SDK. It is suggested to read
these on-demand, while you are going through the tutorial or other content.
Polkadot SDK Reference Docs.
This is the entry point for all reference documents that enhance one’s learning experience in the Polkadot SDK.
Note that this module also contains the glossary.
What is a “reference document”?
First, see why we use rust-docs for everything and our documentation
principles. We acknowledge that as much of the crucial information should be
embedded in the low level rust-docs. Then, high level scenarios should be covered in
crate::tutorial. Finally, we acknowledge that there is a category of information that is:
- crucial to know.
- is too high level to be in the rust-doc of any one
type,traitorfn. - is too low level to be encompassed in a
crate::tutorial.
We can this class of documents “reference documents”. Our goal should be to minimize the number of “reference” docs, as they incur maintenance burden.
Modules
- Learn about the way Substrate and FRAME view their blockchains as state machines.
- Learn about chain specification file and the genesis state of the blockchain. Chain spec and genesis build.
- Learn about substrate’s CLI, and how it can be extended.
- Learn about substrate’s consensus algorithms, and how you can switch between two. Consensus Swapping
- Learn about how extrinsics are encoded to be transmitted to a node and stored in blocks.
- Learn about how to make a pallet/runtime that is fee-less and instead uses another mechanism to control usage and sybil attacks.
- Learn about benchmarking and weight.
- Learn about composite enums in FRAME-based runtimes, such as “RuntimeEvent” and “RuntimeCall”.
- Learn about the currency-related abstractions provided in FRAME. FRAME Currency Abstractions and Traits
- Learn about “Origin” A topic in FRAME that enables complex account abstractions to be built.
- Learn about all the advance ways to test your coordinate a rutnime upgrade and data migration.
- Learn about how frame-system handles accountIds, nonces, consumers and providers.
- The glossary.
- Learn about metadata, the main means through which an upgrade-able runtime communicate its properties to the outside world.
- Learn about the differences between smart contracts and a FRAME-based runtime. They are both “code stored onchain”, but how do they differ? Runtime vs. Smart Contracts
- Learn about how to write safe and defensive code in your FRAME runtime.
- Learn about the signed extensions that form a part of extrinsics. Signed extensions are, briefly, a means for different chains to extend the “basic” extrinsic format with custom data that can be checked by the runtime.
- Learn how Substrate and FRAME use traits and associated types to make modules generic in a type-safe manner.
- Learn about all the memory limitations of the WASM runtime when it comes to memory usage.
- Learn about the WASM meta-protocol of all substrate-based chains.