Module sc_service::client[][src]

Expand description

Substrate Client and associated logic.

The Client is one of the most important components of Substrate. It mainly comprises two parts:

  • A database containing the blocks and chain state, generally referred to as the Backend.
  • A runtime environment, generally referred to as the Executor.


Creating a Client is done by calling the new method and passing to it a Backend and an Executor.

The former is typically provided by the sc-client-db crate.

The latter typically requires passing one of:

Additionally, the fourth generic parameter of the Client is a marker type representing the ways in which the runtime can interface with the outside. Any code that builds a Client is responsible for putting the right marker.


Tool for creating the genesis block.

Light client utilities.


Substrate Client

Relevant client configuration items relevant for the client.

Call executor that executes methods locally, querying all required data from local backend.


Create an instance of in-memory client.

Create a client with the explicitly provided backend. This is useful for testing backend implementations.