Skip to content

Commit dcfb30d

Browse files
0xLuccanhussein11eshaben
authored
Add Polkadot Omni Node page (#648)
* wip: omni node * Improve docs * Fix llms.txt * Apply suggestions * Apply suggestions from code review Co-authored-by: Nicolás Hussein <[email protected]> * Fix llms.txt * Apply suggestions from code review Co-authored-by: Erin Shaben <[email protected]> * Update develop/toolkit/parachains/polkadot-omni-node.md Co-authored-by: Erin Shaben <[email protected]> * Fix llms.txt --------- Co-authored-by: Nicolás Hussein <[email protected]> Co-authored-by: Erin Shaben <[email protected]>
1 parent e4450b9 commit dcfb30d

File tree

3 files changed

+205
-1
lines changed

3 files changed

+205
-1
lines changed

develop/toolkit/parachains/.pages

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,4 +5,5 @@ nav:
55
- spawn-chains
66
- fork-chains
77
- e2e-testing
8-
- 'Light Clients': light-clients.md
8+
- 'Light Clients': light-clients.md
9+
- 'Polkadot Omni Node': polkadot-omni-node.md
Lines changed: 99 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,99 @@
1+
---
2+
title: Polkadot Omni Node
3+
description: Run parachain nodes easily with the polkadot-omni-node, a white-labeled binary that can run parachain nodes using a single pre-built solution.
4+
---
5+
6+
# Polkadot Omni Node
7+
8+
## Introduction
9+
10+
The [`polkadot-omni-node`](https://crates.io/crates/polkadot-omni-node/{{dependencies.crates.polkadot_omni_node.version}}){target=\_blank} crate is a versatile, pre-built binary designed to simplify running parachains in the Polkadot ecosystem. Unlike traditional node binaries that are tightly coupled to specific runtime code, the `polkadot-omni-node` operates using an external [chain specification](/polkadot-protocol/glossary#chain-specification){target=\_blank} file, allowing it to adapt dynamically to different parachains.
11+
12+
This approach enables it to act as a white-labeled node binary, capable of running most parachains that do not require custom node-level logic or extensions. Developers can leverage this flexibility to test, deploy, or operate parachain nodes without maintaining a dedicated codebase for each network.
13+
14+
This guide provides step-by-step instructions for installing the `polkadot-omni-node`, obtaining a chain specification, and spinning up a parachain node.
15+
16+
## Prerequisites
17+
18+
Before getting started, ensure you have the following prerequisites:
19+
20+
- **[Rust](https://www.rust-lang.org/tools/install){target=\_blank}** - required to build and install the `polkadot-omni-node` binary
21+
22+
Ensure Rust's `cargo` command is available in your terminal by running:
23+
24+
```bash
25+
cargo --version
26+
```
27+
28+
## Install Polkadot Omni Node
29+
30+
To install `polkadot-omni-node` globally using `cargo`, run:
31+
32+
```bash
33+
cargo install --locked polkadot-omni-node@{{dependencies.crates.polkadot_omni_node.version}}
34+
```
35+
36+
This command downloads and installs version {{dependencies.crates.polkadot_omni_node.version}} of the binary, making it available system-wide.
37+
38+
To confirm the installation, run:
39+
40+
```bash
41+
polkadot-omni-node --version
42+
```
43+
44+
You should see the installed version number printed to the terminal, confirming a successful installation.
45+
46+
## Obtain Chain Specifications
47+
48+
The `polkadot-omni-node` binary uses a chain specification file to configure and launch a parachain node. This file defines the parachain's genesis state and network settings.
49+
50+
The most common source for official chain specifications is the [`paritytech/chainspecs`](https://github.com/paritytech/chainspecs){target=\_blank} repository. These specifications are also browsable in a user-friendly format via the [Chainspec Collection](https://paritytech.github.io/chainspecs/){target=\_blank} website.
51+
52+
To obtain a chain specification:
53+
54+
1. Visit the [Chainspec Collection](https://paritytech.github.io/chainspecs/){target=\_blank} website
55+
56+
2. Find the parachain you want to run
57+
58+
3. Click the chain spec to open it
59+
60+
4. Copy the JSON content and save it locally as a `.json` file, e.g., `chain_spec.json`
61+
62+
## Run a Parachain Full Node
63+
64+
Once you've installed `polkadot-omni-node` and saved the appropriate chain specification file, you can start a full node for your chosen parachain.
65+
66+
To see all available flags and configuration options, run:
67+
68+
```bash
69+
polkadot-omni-node --help
70+
```
71+
72+
To launch the node, run the following command, replacing `./INSERT_PARACHAIN_CHAIN_SPEC.json` with the actual path to your saved chain spec file.
73+
74+
This command will:
75+
76+
- Load the chain specification
77+
78+
- Initialize the node using the provided network configuration
79+
80+
- Begin syncing with the parachain network
81+
82+
```bash
83+
polkadot-omni-node --chain ./INSERT_PARACHAIN_CHAIN_SPEC.json --sync warp
84+
```
85+
86+
- The `--chain` flag tells the `polkadot-omni-node` which parachain to run by pointing to its chain specification file
87+
88+
- The `--sync warp` flag enables warp sync, allowing the node to quickly catch up to the latest finalized state. Historical blocks are fetched in the background as the node continues operating
89+
90+
Once started, the node will begin connecting to peers and syncing with the network. You’ll see logs in your terminal reflecting its progress.
91+
92+
## Interact with the Node
93+
94+
By default, `polkadot-omni-node` exposes a WebSocket endpoint at `ws://localhost:9944`, which you can use to interact with the running node. You can connect using:
95+
96+
- [Polkadot.js Apps](https://polkadot.js.org/apps/#/explorer){target=\_blank} — a web-based interface for exploring and interacting with Polkadot SDK-based chains
97+
- Custom scripts using compatible [libraries](/develop/toolkit/api-libraries/){target=\_blank}
98+
99+
Once connected, you can review blocks, call extrinsics, inspect storage, and interact with the runtime.

llms.txt

Lines changed: 104 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -67,6 +67,7 @@ Doc-Page: https://docs.polkadot.com/develop/toolkit/parachains/fork-chains/chops
6767
Doc-Page: https://docs.polkadot.com/develop/toolkit/parachains/fork-chains/
6868
Doc-Page: https://docs.polkadot.com/develop/toolkit/parachains/
6969
Doc-Page: https://docs.polkadot.com/develop/toolkit/parachains/light-clients/
70+
Doc-Page: https://docs.polkadot.com/develop/toolkit/parachains/polkadot-omni-node/
7071
Doc-Page: https://docs.polkadot.com/develop/toolkit/parachains/quickstart/
7172
Doc-Page: https://docs.polkadot.com/develop/toolkit/parachains/quickstart/pop-cli/
7273
Doc-Page: https://docs.polkadot.com/develop/toolkit/parachains/spawn-chains/
@@ -11449,6 +11450,109 @@ Substrate Connect automatically detects whether the user has the extension insta
1144911450
- [Light Clients - Polkadot Specification](https://spec.polkadot.network/sect-lightclient){target=\_blank}
1145011451
--- END CONTENT ---
1145111452

11453+
Doc-Content: https://docs.polkadot.com/develop/toolkit/parachains/polkadot-omni-node/
11454+
--- BEGIN CONTENT ---
11455+
---
11456+
title: Polkadot Omni Node
11457+
description: Run parachain nodes easily with the polkadot-omni-node, a white-labeled binary that can run parachain nodes using a single pre-built solution.
11458+
---
11459+
11460+
# Polkadot Omni Node
11461+
11462+
## Introduction
11463+
11464+
The [`polkadot-omni-node`](https://crates.io/crates/polkadot-omni-node/{{dependencies.crates.polkadot_omni_node.version}}){target=\_blank} crate is a versatile, pre-built binary designed to simplify running parachains in the Polkadot ecosystem. Unlike traditional node binaries that are tightly coupled to specific runtime code, the `polkadot-omni-node` operates using an external [chain specification](/polkadot-protocol/glossary#chain-specification){target=\_blank} file, allowing it to adapt dynamically to different parachains.
11465+
11466+
This approach enables it to act as a white-labeled node binary, capable of running most parachains that do not require custom node-level logic or extensions. Developers can leverage this flexibility to test, deploy, or operate parachain nodes without maintaining a dedicated codebase for each network.
11467+
11468+
This guide provides step-by-step instructions for installing the `polkadot-omni-node`, obtaining a chain specification, and spinning up a parachain node.
11469+
11470+
## Prerequisites
11471+
11472+
Before getting started, ensure you have the following prerequisites:
11473+
11474+
- **[Rust](https://www.rust-lang.org/tools/install){target=\_blank}** - required to build and install the `polkadot-omni-node` binary
11475+
11476+
Ensure Rust's `cargo` command is available in your terminal by running:
11477+
11478+
```bash
11479+
cargo --version
11480+
```
11481+
11482+
## Install Polkadot Omni Node
11483+
11484+
To install `polkadot-omni-node` globally using `cargo`, run:
11485+
11486+
```bash
11487+
cargo install --locked polkadot-omni-node@{{dependencies.crates.polkadot_omni_node.version}}
11488+
```
11489+
11490+
This command downloads and installs version {{dependencies.crates.polkadot_omni_node.version}} of the binary, making it available system-wide.
11491+
11492+
To confirm the installation, run:
11493+
11494+
```bash
11495+
polkadot-omni-node --version
11496+
```
11497+
11498+
You should see the installed version number printed to the terminal, confirming a successful installation.
11499+
11500+
## Obtain Chain Specifications
11501+
11502+
The `polkadot-omni-node` binary uses a chain specification file to configure and launch a parachain node. This file defines the parachain's genesis state and network settings.
11503+
11504+
The most common source for official chain specifications is the [`paritytech/chainspecs`](https://github.com/paritytech/chainspecs){target=\_blank} repository. These specifications are also browsable in a user-friendly format via the [Chainspec Collection](https://paritytech.github.io/chainspecs/){target=\_blank} website.
11505+
11506+
To obtain a chain specification:
11507+
11508+
1. Visit the [Chainspec Collection](https://paritytech.github.io/chainspecs/){target=\_blank} website
11509+
11510+
2. Find the parachain you want to run
11511+
11512+
3. Click the chain spec to open it
11513+
11514+
4. Copy the JSON content and save it locally as a `.json` file, e.g., `chain_spec.json`
11515+
11516+
## Run a Parachain Full Node
11517+
11518+
Once you've installed `polkadot-omni-node` and saved the appropriate chain specification file, you can start a full node for your chosen parachain.
11519+
11520+
To see all available flags and configuration options, run:
11521+
11522+
```bash
11523+
polkadot-omni-node --help
11524+
```
11525+
11526+
To launch the node, run the following command, replacing `./INSERT_PARACHAIN_CHAIN_SPEC.json` with the actual path to your saved chain spec file.
11527+
11528+
This command will:
11529+
11530+
- Load the chain specification
11531+
11532+
- Initialize the node using the provided network configuration
11533+
11534+
- Begin syncing with the parachain network
11535+
11536+
```bash
11537+
polkadot-omni-node --chain ./INSERT_PARACHAIN_CHAIN_SPEC.json --sync warp
11538+
```
11539+
11540+
- The `--chain` flag tells the `polkadot-omni-node` which parachain to run by pointing to its chain specification file
11541+
11542+
- The `--sync warp` flag enables warp sync, allowing the node to quickly catch up to the latest finalized state. Historical blocks are fetched in the background as the node continues operating
11543+
11544+
Once started, the node will begin connecting to peers and syncing with the network. You’ll see logs in your terminal reflecting its progress.
11545+
11546+
## Interact with the Node
11547+
11548+
By default, `polkadot-omni-node` exposes a WebSocket endpoint at `ws://localhost:9944`, which you can use to interact with the running node. You can connect using:
11549+
11550+
- [Polkadot.js Apps](https://polkadot.js.org/apps/#/explorer){target=\_blank} — a web-based interface for exploring and interacting with Polkadot SDK-based chains
11551+
- Custom scripts using compatible [libraries](/develop/toolkit/api-libraries/){target=\_blank}
11552+
11553+
Once connected, you can review blocks, call extrinsics, inspect storage, and interact with the runtime.
11554+
--- END CONTENT ---
11555+
1145211556
Doc-Content: https://docs.polkadot.com/develop/toolkit/parachains/quickstart/
1145311557
--- BEGIN CONTENT ---
1145411558
---

0 commit comments

Comments
 (0)