Awesome Substrate

An awesome list is a list of awesome things curated by the community.

Substrate is a framework for building upgradable, modular and efficient blockchains. Substrate is an open-source library of Rust code that is maintained by Parity Technologies.

Official Resources

Recordings

Workshops & Demos

  • UTXO Workshop - Use Substrate to implement a Bitcoin-like chain.
  • Cumulus Wokshop - Build a parachain with Cumulus.
  • Enterprise Sample - A fully-featured sample that uses a supply chain use case to demonstrate Substrate's rich set of capabilities.

Community Resources

  • DotLeap - Community content and newsletter.
  • Stack Overflow - Questions tagged substrate.
  • Reddit - Official subreddit.
  • Polkadot Stack - Another awesome list maintained by our friends at Web3 Foundation.
  • PolkaView - Historical data on minimum staked to be rewarded.
  • Subsocial - Decentralized social network for the Polkadot / Kusama ecosystem. Built on Substrate + IPFS.
  • DOTspot - An open-place for Substrate ecosystem projects to share their latest news.
  • DotJobs - A job board for the Polkadot ecosystem from the team at Stateless.Money.
  • Substrate Migrations - A list of past runtime storage migrations with notes and examples.
  • OnFinality - Free and public API services to shared Substrate based archival nodes.

Community Resources - Guides

Frameworks

  • FRAME - An idiomatic system for building Substrate runtimes.
  • ink! - Smart contract language for Substrate chains.
  • Cumulus - Simplified Polkadot-compatible parachains.
  • Bridges - A collection of tools for cross-chain communication.
  • Frontier - End-to-end Ethereum emulation for Substrate chains.
  • Polkadot-JS - Rich framework for front-end development.
  • SubstraTEE - Trusted off-chain execution framework that uses Intel SGX trusted execution environments.
  • FRAME Benchmarking - The official benchmarking framework for the FRAME system for runtime development.

Templates

  • Node - A fresh FRAME-based node, ready for hacking.
  • Pallet - Easily create pluggable blockchain capabilities.
  • Parachain - A new Cumulus-based Substrate node, ready for hacking (see 'Cumulus' under Frameworks for more info).
  • Front-End - Use the Polkadot-JS API and React to build front-ends for Substrate-based chains.
  • substrate-stencil - A template for a Substrate node that includes staking and governance capabilities.

Pallets

Client Libraries

Ecosystem Tools

  • Polkadot-JS Apps UI - Semi-official block explorer & front-end for Substrate-based chains.
  • Polkadot-JS Extension - Browser extension for interacting with Substrate-based chains.
  • Polkadot Tool Index - Here is a very useful list of tools available for your development w/ Polkadot and any substrate chain including Block Explorers, Wallets, Network Monitoring & Reporting, Clients, Benchmarking, Fuzzing, Forking, SCALE Codec, CLI Tools and much more.
  • Sidecar - REST service that runs alongside Substrate nodes.
  • Archive - Indexing engine for Substrate chains.
  • TxWrapper - Helpful library for offline transaction creation.
  • Subkey - Command line utility for working with cryptographic keys.
  • Polkascan - Multi-chain block explorer maintained by Polkascan Foundation.
  • VSCode Substrate - Official plugin for Visual Studio Code.
  • Parity Signer - Upcycle an unused mobile phone into an air-gapped hardware wallet.
  • Fork Off Substrate - Script to help bootstrap a new chain with the state of a running chain.
  • Substrate debug-kit - A collection of tools and libraries for debugging Substrate-based chains, including offline-election, which is a tool that is used to predict nominated proof-of-stake elections.
  • sup - Command line tool for generating or upgrading a Substrate node.
  • Substrate Dev Hub Utils - Unofficial utilities for working with official Substrate Developer Hub resources.
  • Subscan - Multi-network explorer for Substrate-based chains.
  • Substrate Docker Builders - A set of Dockerfiles and GitHub Actions to auto-build and push a Docker image for Substrate-based chains.
  • Halva - A toolchain for improving the experience of developing on Substrate.
  • offchain::ipfs - Substrate infused with IPFS.
  • Gantree Library - A suite of technologies for managing Substrate-powered parachain networks via rapid spin-up & tear-down.
  • Redspot - A Truffle-like toolkit for smart contracts for the FRAME Contracts pallet.
  • Proxy Hot Wallet Demo - A demonstration of a secure, convenient, and flexible hot wallet architecture built on Substrate primitives.
  • Substrate Faucet Bot - Python-based faucet for development purposes.
  • Hydra - A GraphQL framework for Substrate nodes with a hosted playground. Check out the great docs.
  • Substrate Graph - GraphQL indexer for Substrate-based chains.
  • SubQuery - A GraphQL indexer and query service that allows users to easily create indexed data sources and host them online for free.
  • Megaclite - Zero-knowledge tools for the Polkadot ecosystem.
  • Europa - A sandbox for the Substrate runtime execution environment.
  • Jupiter - Testnet for smart contracts written for the FRAME Contracts pallet.
  • Staking Rewards Collector - A script to parse and output staking rewards for a given Kusama or Polkadot address and cross-reference them with daily price data.
  • polkadot-launch - Simple CLI tool to launch a local Polkadot test network.
  • substrate-js-utils - A set of useful JavaScript utilities for Substrate that uses the Polkadot{JS} API. Also deployed as a website.
  • substrate-graph-benchmarks - Graph the benchmark output of FRAME pallets.
  • substrate-balance-calculator - Breakdown the balances of your Substrate account.
  • substrate-balance-graph - Create a graph of the token balance over time of a Substrate address.
  • polkadot-js-bundle - A standalone JS bundle that contains Polkadot{JS} libraries.
  • substrate-society - A basic front-end for the FRAME Society pallet.
  • Aleph.im - Scalable, decentralized database, file storage, and computation services for Substrate chains and more.
  • subsee - CLI to inspect metadata of a substrate node as JSON.
  • polkadot-runtime-prom-exporter - A Prometheus exporter for Polkadot runtime metrics (modifable for substrate use).
  • subwasm - CLI to inspect a runtime WASM blob offline. It shows information, metadata and can compare runtimes. It can also help you fetch a runtime directly from a node.
  • srtool - Docker image to deterministically build a runtime.
  • srtool-cli - CLI frontend for the srtool Docker image.
  • srtool-actions - Github actions to easily use the srtool Docker image to build your onw runtime.

Substrate Mobile Engineering Tools / Libraries

Alternative Implementations

SCALE Codec

SCALE Codec - Implementations