# paritytech/substrate

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/paritytech-substrate).**

8,409 stars · 2,643 forks · Rust · Apache-2.0 · archived

## Links

- GitHub: https://github.com/paritytech/substrate
- awesome-repositories: https://awesome-repositories.com/repository/paritytech-substrate.md

## Description

Substrate is a modular blockchain development framework used to build customized blockchain networks with programmable state transitions and consensus mechanisms. It functions as a toolkit for constructing bespoke network protocols and deploying nodes to local environments or global testnets.

The framework utilizes a WebAssembly runtime environment to execute state transition logic, ensuring deterministic behavior across all network nodes. It enables the composition of modular logic components and runtime palettes to define the specific rules and behavior of a blockchain.

The system covers core blockchain operations including signed transaction processing, block authoring management, and the integration of environmental data. It also provides cryptographic key administration for secure session key storage and rotation, as well as tools for isolated binary compilation and node orchestration.

## Tags

### Development Tools & Productivity

- [Blockchain Development Toolkits](https://awesome-repositories.com/f/development-tools-productivity/blockchain-development-toolkits.md) — Provides a modular framework and set of tools for constructing customized blockchain networks and protocols.
- [Isolated Binary Compilations](https://awesome-repositories.com/f/development-tools-productivity/isolated-binary-compilations.md) — Compiles binaries within a self-contained environment to remove the requirement for local toolchain installations. ([source](https://github.com/paritytech/substrate/tree/master/docker))

### Networking & Communication

- [Blockchain Protocols](https://awesome-repositories.com/f/networking-communication/distributed-systems-p2p/decentralized-blockchain-technologies/blockchain-protocols.md) — A modular framework for constructing bespoke blockchain protocols, including custom state transitions and consensus rules. ([source](https://github.com/paritytech/substrate/blob/master/LICENSE-APACHE2))
- [Runtime Logic Modularity](https://awesome-repositories.com/f/networking-communication/distributed-systems-p2p/decentralized-blockchain-technologies/blockchain-platforms/modular-customizations/runtime-logic-modularity.md) — Enables the composition of modular logic components to define the rules, state transitions, and behavior of the network. ([source](https://github.com/paritytech/substrate/tree/master/frame))
- [Blockchain Protocol Builders](https://awesome-repositories.com/f/networking-communication/distributed-systems-p2p/decentralized-blockchain-technologies/blockchain-protocol-builders.md) — Provides a system for constructing bespoke network protocols and deploying nodes to global testnets or local environments.

### Data & Databases

- [Consensus-Driven Block Production](https://awesome-repositories.com/f/data-databases/proof-of-stake-delegation/consensus-driven-block-production.md) — Implements consensus-driven block production through coordinated transaction queuing and validator agreement.

### Programming Languages & Runtimes

- [Blockchain Runtimes](https://awesome-repositories.com/f/programming-languages-runtimes/blockchain-runtimes.md) — Provides the host runtime environment for executing on-chain logic compiled into WebAssembly blobs.
- [WebAssembly](https://awesome-repositories.com/f/programming-languages-runtimes/runtime-execution-environments/webassembly.md) — Utilizes a WebAssembly execution layer to ensure deterministic state transitions across all network nodes.
- [Blockchain State Runtimes](https://awesome-repositories.com/f/programming-languages-runtimes/runtime-execution-environments/webassembly/embedded-webassembly-runtimes/extensible-webassembly-runtimes/blockchain-state-runtimes.md) — Compiles runtime logic into WebAssembly blobs to govern the operational rules and application interfaces of the network. ([source](https://github.com/paritytech/substrate/tree/master/docs))

### Security & Cryptography

- [Blockchain Key Management](https://awesome-repositories.com/f/security-cryptography/cryptographic-key-management/blockchain-key-management.md) — Provides secure storage and rotation of session keys within a filesystem keystore for network interactions.
- [Keystore Management](https://awesome-repositories.com/f/security-cryptography/keystore-management.md) — Provides secure, encrypted filesystem-based storage and rotation for session keys used in signing transactions.
- [Transaction Signing](https://awesome-repositories.com/f/security-cryptography/transaction-signing.md) — Validates and propagates signed transactions from external users to update the global blockchain state. ([source](https://github.com/paritytech/substrate/tree/master/docs))

### Software Engineering & Architecture

- [Block Authoring Frameworks](https://awesome-repositories.com/f/software-engineering-architecture/block-authoring-frameworks.md) — Provides mechanisms for producing new blocks using transaction queuing and prioritization logic. ([source](https://github.com/paritytech/substrate/tree/master/docs))
- [Blockchain Application Frameworks](https://awesome-repositories.com/f/software-engineering-architecture/blockchain-application-frameworks.md) — A modular toolkit for building sovereign layer-one blockchains with customizable state transition logic and consensus rules.
- [Blockchain Transaction Management](https://awesome-repositories.com/f/software-engineering-architecture/blockchain-transaction-management.md) — Processes signed user data and manages block authoring through transaction queuing and prioritization.
- [Runtime Palette Compositions](https://awesome-repositories.com/f/software-engineering-architecture/modular-program-composition/runtime-palette-compositions.md) — Enables the composition of modular logic palettes into a single runtime binary during the compilation process.
- [Wasm-Based Execution](https://awesome-repositories.com/f/software-engineering-architecture/state-machine-logic/deterministic-state-transitions/wasm-based-execution.md) — Executes blockchain state transition logic within a WebAssembly virtual machine to ensure deterministic behavior across nodes.
- [State Transition Mapping](https://awesome-repositories.com/f/software-engineering-architecture/state-transition-mapping.md) — Defines how the global blockchain state transitions in response to signed transactions and environmental inputs.
- [Environmental Data Integration](https://awesome-repositories.com/f/software-engineering-architecture/environmental-data-integration.md) — Allows the inclusion of unsigned data like timestamps and validator status into blocks based on network consensus. ([source](https://github.com/paritytech/substrate/tree/master/docs))

### DevOps & Infrastructure

- [Blockchain Node Deployments](https://awesome-repositories.com/f/devops-infrastructure/aws-ecs-deployments/aws-ec2-deployments/blockchain-node-deployments.md) — Facilitates the deployment of blockchain client nodes locally or on global testnets to verify configurations.
- [Client Node Distributions](https://awesome-repositories.com/f/devops-infrastructure/client-node-distributions.md) — Provides the ability to package the blockchain protocol and runtime into a standalone executable for peer-to-peer node deployment.
- [Local Blockchain Node Hosting](https://awesome-repositories.com/f/devops-infrastructure/local-blockchain-node-hosting.md) — Enables running pre-configured client nodes locally or deploying global testnets to verify chain configurations. ([source](https://github.com/paritytech/substrate/tree/master/docs))

### Part of an Awesome List

- [Runtime Modules](https://awesome-repositories.com/f/awesome-lists/devtools/runtime-modules.md) — Core library for building modular blockchain runtimes.
