Tool
Tool Index
Here, we provide a list of tools available for your development needs. They are sorted by context. If you're actively maintaining a tool that might be useful to other Polkadot, Kusama or Substrate developers, feel free to add it in.
Wallets
Please see the Wallets page.
Block Explorers
Polkadot-JS Apps Explorer - Polkadot dashboard block explorer. Supports dozens of other networks, including Kusama, Westend, and other remote or local endpoints. Access via IPFS
DotScanner - Polkadot & Kusama Blockchain explorer.
Network Monitoring & Reporting
Polkadot Telemetry Service - Network information including what nodes are running the chain, what software versions they are running, sync status, and location.
Ryabina's Telegram Bot - A Telegram bot for monitoring on-chain events of Substrate chains. GitHub Repository
PolkaStats - Polkadot network statistics (includes Kusama). Shows network information and staking details from validators and intentions. GitHub Repository.
Panic - A node monitoring and alert server for validators.
OpenWeb3/Guardian - A CLI tool and JS library to monitor on chain states and events.
Clients
Polkadot - The original Rust implementation of the Polkadot Host.
Gossamer - A Go implementation of the Polkadot Host developed by ChainSafe Systems.
TX Wrapper - Helper functions for offline transaction generation.
Tools
Substrate - Blockchain development platform written in Rust. The Rust version of the Polkadot Host is being built with Substrate.
Substrate Docs - Comprehensive documentation and tutorials for building a blockchain using Substrate.
Substrate Debug Kit - A collection of debug tools and libraries around substrate chains. Includes tools to calculate NPoS elections offline, disk usage monitoring, test templates against chain state and other pallet-specific helper.
Diener - A tool for easy changing of Polkadot or Substrate dependency versions.
Polkadot Launch - A tool to easily launch custom local parachain-enabled Polkadot versions.
Halva - A Truffle-inspired local development environment for Substrate.
Fork-off Substrate - Copies the state of an existing chain into your local version and lets you further experiment on it.
srtool - A tool for verifying runtime versions against on-chain proposal hashes.
sub-bench - A tool to spam your node with transactions for the sake of benchmarking.
substrate-devhub-utils - A set of JavaScript utilities making life with Substrate a little easier.
sub-flood - A tool to benchmark Substrate by flooding it with requests.
UI
Polkadot JS Apps UI - Repository of the polkadot.js.org/apps UI.
Substrate Front-end Template - ReactJS-based starter UI for custom user interfaces for Substrate chains.
Polkadot JS Browser Extension - Key management in a Chrome extension.
Libraries
Polkadot-JS Common
Polkadot-JS Common provides various utility functions that are used across all projects in the @polkadot
namespace and is split into a number of internal utility packages. The documentation and usage instructions are provided at Polkadot-JS/Common API Documentation.
@polkadot/keyring This allows you to create and load accounts in JavaScript. It is helpful for creating wallets or any application that will require the user to write to chain. Examples.
@polkadot/util Utility functions like checking if a string is hex-encoded.
@polkadot/util-crypto Useful cryptographic utilities for developing with Polkadot.
CLI Tools
@polkadot/api-cli Command line interface for the polkadot API. Documentation.
@polkadot/monitor-rpc An RPC monitor for Polkadot. See the RPC tools below for additional information.
@polkadot/signer-cli A Tool to construct, sign, and broadcast transactions. Signing can be done offline.
Polkadot API Cpp - A С++ API for Polkadot, can build
clip
, a command line tool.Subkey - Command line utility for generating and inspecting key pairs.
WASM
WebAssembly related tools and projects.
ink! - An eDSL to write WebAssembly based smart contracts using the Rust programming language.
parity-wasm - Low-level WebAssembly format library.
wasm-utils - Collection of WebAssembly utilities used in pwasm-ethereum and substrate contract development.
wasmi - A WebAssembly interpreter conceived as a component of parity-ethereum (Ethereum-like contracts in Wasm) and Substrate.
RPC and API Tools
@polkadot/api/rpc-provider Demonstrates how the JS tools interact with the node over RPC.
RPC documentation - Documentation of Substrate RPC methods.
Polkadot API Server by SimplyVC - A wrapper around the Polkadot API which makes it easier to make Polkadot API calls from any programming language.
Go: Subscan API - Go API for Polkadot.
C++ Polkadot API - С++ API for Polkadot.
.NET Polkadot API - Polkadot Substrate API for .NET.
Python Polkadot API - Polkadot library for Python.
GSRPC - Substrate RPC client in Go, a.k.a. GSRPC.
Substrate API Sidecar - An HTTP wrapper for Substrate, abstracting some complex RPC calls into simple REST calls.
Subxt - A Rust library to submit extrinsics to a Substrate node via RPC.
SCALE Codec
The SCALE (Simple Concatenated Aggregate Little-Endian) Codec is a lightweight, efficient, binary serialization and deserialization codec.
It is designed for high-performance, copy-free encoding and decoding of data in resource-constrained execution contexts, such as the Substrate runtime. It is not self-describing in any way and assumes the decoding context has all type knowledge about the encoded data.
It is used in almost all communication to/from Substrate nodes, so implementations in different languages exist:
Data Crawling and Conversion
The following tools help you extract and structure data from a Substrate node.
Polkascan PRE Harvester (matching explorer for harvested data) - Transforms raw blockchain data into relational data.
Parity's Substrate Archive - Can be run alongside a Substrate node to archive all blocks, state, and extrinsic data into PostgreSQL database.
Subsquid Archives - Generate a GraphQL database from a Substrate chain's data with rich filtering and querying capabilities. The data (events, extrinsics, blocks) for most parachains is readily available though public archive GraphQL endpoints, kept in Squid Archive Registry
Polka-store - A tool which scans a Substrate chain and stores balance-relevant transactions in an SQLite database.
Substrate-graph - A compact indexer for Substrate based nodes providing a GraphQL interface.
Last updated