Skip to content

Instantly share code, notes, and snippets.

@vyorkin
Created July 12, 2021 10:32
Show Gist options
  • Save vyorkin/bbf4a987d1efec4b6579c69aad03f7f4 to your computer and use it in GitHub Desktop.
Save vyorkin/bbf4a987d1efec4b6579c69aad03f7f4 to your computer and use it in GitHub Desktop.
Substrate & Cumulus crates cheat sheet
  • sp - Substrate Primitives

  • sc - Substrate Client

  • sp-api - Substrate runtime API

  • sp-consensus - Common utilities for building and using consensus engines in Substrate

  • sp-consensus-aura - Primitives for Aura PoA consensus engine

  • sc-consensus-aura - Client primitives for Aura PoA consensus engine

  • sp-core - Shareable Substrate types

  • sp-finality-grandpa - Primitives for GRANDPA integration, suitable for WASM compilation

  • sp-runtime - Runtime Modules shared primitive types

  • sp-inherents - Substrate inherent extrinsics

  • sc-finality-grandpa - Integration of the GRANDPA finality gadget into Substrate

  • sc-chain-spec - Contains structs and utilities to declare a runtime-specific configuration file

  • sc-client-api - Substrate client interfaces

  • sc-telemetry - Allows ingesting telemetry data

  • sc-service - Substrate service. Starts a thread that spins up the network, client, and extrinsic pool. Manages communication between them

  • sc-executor - Provides means of executing/dispatching calls into the runtime

  • sc-consensus - Collection of common consensus specific implementations

  • sc-consensus-manual-seal - Manual sealing engine for Substrate. the engine listens for rpc calls to seal blocks and create forks. This is suitable for a testing environment

  • sc-consensus-slots - Slots functionality for Substrate. Some consensus algorithms have a concept of slots, which are intervals in time during which certain events can and/or must occur. This crate provides generic functionality for slots

  • sc-transaction-pool - Substrate transaction pool implementation

  • sc-basic-authorship - Basic implementation of block-authoring logic

  • sc-network - Substrate-specific P2P networking

  • sc-cli - Substrate CLI library

  • sc-rpc - Substrate RPC implementation

  • frame-benchmarking - Macro for benchmarking a FRAME runtime

  • sp-trie - Utility functions to interact with Substrate’s Base-16 Modified Merkle Patricia tree (trie)

  • sp-timestamp - Substrate core types and inherents for timestamps

  • substrate-prometheus-endpoint - Endpoint to expose Prometheus metrics

  • sc-tracing - Instrumentation implementation for substrate

  • sp-block-builder - Provides the required functionality for building a block

  • frame-system-rpc-runtime-api - Runtime API definition required by System RPC extensions

  • pallet-transaction-payment-rpc-runtime-api - RPC runtime API for transaction payment FRAME pallet

  • sp-offchain - The Offchain Worker runtime API primitives

  • sp-session - Substrate core types around sessions

  • sp-storage - Primitive types for storage related stuff

  • sp-transaction-pool - Transaction pool primitives types & Runtime API

  • sp-blockchain - Substrate blockchain traits and primitives

  • sp-std - Lowest-abstraction level for the Substrate runtime: just exports useful primitives from std or client/alloc to be used with any code that depends on the runtime. Substrate runtime standard library as compiled when linked with Rust’s standard library

  • sp-keystore - Keystore traits

  • sp-version - Provides a function that returns the runtime version

  • sp-io - I/O host interface for substrate runtime

  • cumulus-client-network - Cumulus-specific networking protocol

  • cumulus-client-service - Provides functions for starting a collator node or a normal full node

  • cumulus-client-consensus-aura - AURA consensus algorithm for parachains

  • cumulus-client-consensus-common - Cumulus specific common consensus implementations

  • cumulus-client-consensus-relay-chain - The relay-chain provided consensus algorithm

  • cumulus-primitives-core - Cumulus related core primitive types and traits

  • cumulus-primitives-parachain-inherent - Contains the ParachainInherentData struct and client side code for generating the parachain inherents

  • cumulus-pallet-parachain-system - Base pallet for cumulus-based parachains

  • polkadot-primitives - Primitives which are necessary for parachain execution from a relay-chain perspective

  • polkadot-service - Specialized wrapper over Substrate service

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment