Polkadot Parachain Omni-Node: Gathering Ideas and Feedback

I have just sync a Pop Network testnet node using the polkadot parachain binary and I have had no issues at all :ok_hand:
(link to the chain spec).

I’m not adding the logs as there is nothing unusual or specially interesting in them, everything seemed to be just flowing as expected.

Omni-Node proposes an experience which is a big big win for the ecosystem.
Not only because it removes a lot of weight from the shoulders of teams that spend hours applying changes to catch up with the latest dependencies. But also helps a lot to those builders that won’t require that much customization from the very beginning.

I strongly believe that newcomers will feel way more motivated to pursue their developments if the initial journey from idea to having something running is as smooth as it can be, thanks to initiatives like this one.

At the same time, I’m extremely excited to see the huge quality of life improvements for teams that are maintaining templates, like we are doing right now at R0GUE for pop cli.

Cheers.

5 Likes

A little related poll that I started on X related to this, re-posting it here to get more feedback: x.com

1 Like

Raising an update omni-node:

`polkadot-omni-node` Meta: Tutorials and reference docs. · Issue #5568 · paritytech/polkadot-sdk · GitHub This issue is demonstrating what is the final vision of this project quite well. It also shows how a team can already use polkadot-parachain as their node, alongside a few other binaries listed there, to have a node-less development workflow.

Please also take the EVM plan noted in the issue above in mind.

A lot has been developed about this in the last few months, and I hope an initial milestone can be reached within the next stable release of polkadot-sdk by EOY.

This is a fantastic improvement and addresses many issues Substrate developers face. I do have a suggestion: it would be helpful if there were a way to “unpack” the omni-node so that teams looking to add custom functionality could do so. Right now, the omni-node is compiled into a binary, which makes customization challenging.

However, I can see a real use case for this. For example, a team that has been working with the omni-node might eventually want to customize it while still retaining the existing runtime. There should be a way for them to “unpack” the omni-node into a full node codebase, enabling them to build on top of it.

2 Likes

Sure, we can do this if more flexibility is needed. Right now we only expose some high level functionality through the polkadot-parachain-lib, but internally we have a lot of lower level components that are in a pretty good state. Maybe we would also need to polish them a bit and make some adjustments, but eventually we could expose them through the library.

If you have a specific use-case, I would love to hear more about it.

1 Like

Some updates on the OmniNode:

We have merged a lot of the code needed to make a nice dual-product:

  1. polkadot-omni-node: a white-labeled omni node that can work for any standard parachain, and can be used for local testing
  2. polkadot-omni-node-lib, which can be used to create a custom parachain node, with a much much simpler API.

Both crates and some documentation is merged into polkadot-sdk master. See here. We hope that all of this will be released as a part of stable-202412 release. More official docs and info coming out then.


Omni Node is a great opportunity for teams that don’t want to update the code of their nodes to just switch. polkadot-omni-node comes out in the next release, but you can use the existing polkadot-parachain, which is almost identical. I am betting that most of the parachains listed here who have outdated nodes can use omni node to sync.

7 Likes