Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
Summary
Errors per inputErrors in docs/nodes/boot-node.mdx
Errors in docs/nodes/cardano-db-sync.mdx
Errors in docs/nodes/cardano-node.mdx
Errors in docs/nodes/full-node.mdx
Errors in docs/nodes/index.mdx
Errors in docs/nodes/node-endpoints.mdx
Errors in docs/nodes/rpc-node.mdx
|
🚀 Preview Deployment✅ Deployment Ready 🔗 Preview URL: https://pr-720-midnight-docs.vercel.app 📝 Latest commit: This preview updates automatically when you push new commits to this PR. |
There was a problem hiding this comment.
Remaining comments which cannot be posted as a review comment to avoid GitHub Rate Limit
vale
docs/nodes/full-node.mdx|197 col 4| [Midnight.HeadingSentenceCase] 'Verify the node' should be in sentence case.
docs/nodes/index.mdx|19 col 44| [Vale.Spelling] Did you really mean 'permissioned'?
docs/nodes/index.mdx|20 col 23| [Vale.Spelling] Did you really mean 'Mainchain'?
docs/nodes/index.mdx|24 col 12| [Vale.Spelling] Did you really mean 'Polkadot'?
docs/nodes/index.mdx|109 col 89| [Vale.Spelling] Did you really mean 'Mainnet'?
docs/nodes/index.mdx|113 col 11| [Vale.Spelling] Did you really mean 'validator'?
docs/nodes/index.mdx|113 col 26| [Vale.Spelling] Did you really mean 'Permissioned'?
docs/nodes/index.mdx|113 col 83| [Vale.Spelling] Did you really mean 'FNOs'?
docs/nodes/index.mdx|113 col 144| [Vale.Spelling] Did you really mean 'SPOs'?
docs/nodes/index.mdx|114 col 22| [Vale.Spelling] Did you really mean 'system_parameters'?
docs/nodes/index.mdx|114 col 68| [Vale.Spelling] Did you really mean 'permissioned'?
docs/nodes/index.mdx|115 col 3| [Vale.Spelling] Did you really mean 'Validator'?
docs/nodes/index.mdx|123 col 42| [Vale.Spelling] Did you really mean 'Mainchain'?
docs/nodes/index.mdx|129 col 12| [Vale.Terms] Use 'Midnight' instead of 'midnight'.
docs/nodes/index.mdx|130 col 12| [Vale.Terms] Use 'Midnight' instead of 'midnight'.
docs/nodes/index.mdx|133 col 88| [Vale.Spelling] Did you really mean 'Mainchain'?
docs/nodes/index.mdx|142 col 57| [Vale.Spelling] Did you really mean 'Schnorrkel'?
docs/nodes/index.mdx|142 col 70| [Vale.Spelling] Did you really mean 'Ristretto'?
docs/nodes/node-endpoints.mdx|135 col 4| [Midnight.HeadingSentenceCase] 'Common RPC queries' should be in sentence case.
docs/nodes/node-endpoints.mdx|155 col 5| [Midnight.HeadingSentenceCase] 'List available RPC methods' should be in sentence case.
docs/nodes/node-endpoints.mdx|251 col 26| [Vale.Spelling] Did you really mean 'validator'?
docs/nodes/rpc-node.mdx|13 col 3| [Midnight.HeadingSentenceCase] 'Set up RPC node for Midnight' should be in sentence case.
docs/nodes/rpc-node.mdx|27 col 4| [Midnight.HeadingSentenceCase] 'Set up an RPC node' should be in sentence case.
docs/nodes/rpc-node.mdx|31 col 5| [Midnight.HeadingSentenceCase] 'Step 1: Configure PostgreSQL database' should be in sentence case.
docs/nodes/rpc-node.mdx|39 col 57| [Vale.Spelling] Did you really mean 'cexplorer'?
docs/nodes/rpc-node.mdx|41 col 5| [Midnight.HeadingSentenceCase] 'Step 2: Run the Docker command for an RPC node' should be in sentence case.
docs/nodes/rpc-node.mdx|110 col 5| [Midnight.HeadingSentenceCase] 'Configure RPC methods' should be in sentence case.
docs/nodes/rpc-node.mdx|123 col 24| [Vale.Spelling] Did you really mean 'nginx'?
docs/nodes/rpc-node.mdx|123 col 31| [Vale.Spelling] Did you really mean 'Caddy'?
docs/nodes/rpc-node.mdx|129 col 4| [Midnight.HeadingSentenceCase] 'Verify the node' should be in sentence case.
There was a problem hiding this comment.
Remaining comments which cannot be posted as a review comment to avoid GitHub Rate Limit
vale
docs/nodes/index.mdx|114 col 22| [Vale.Spelling] Did you really mean 'system_parameters'?
docs/nodes/index.mdx|114 col 68| [Vale.Spelling] Did you really mean 'permissioned'?
docs/nodes/index.mdx|115 col 3| [Vale.Spelling] Did you really mean 'Validator'?
docs/nodes/index.mdx|123 col 42| [Vale.Spelling] Did you really mean 'Mainchain'?
docs/nodes/index.mdx|129 col 12| [Vale.Terms] Use 'Midnight' instead of 'midnight'.
docs/nodes/index.mdx|130 col 12| [Vale.Terms] Use 'Midnight' instead of 'midnight'.
docs/nodes/index.mdx|133 col 88| [Vale.Spelling] Did you really mean 'Mainchain'?
docs/nodes/index.mdx|142 col 57| [Vale.Spelling] Did you really mean 'Schnorrkel'?
docs/nodes/index.mdx|142 col 70| [Vale.Spelling] Did you really mean 'Ristretto'?
docs/nodes/cardano-node.mdx|13 col 3| [Midnight.HeadingSentenceCase] 'Set up Cardano node' should be in sentence case.
docs/nodes/cardano-node.mdx|16 col 223| [Vale.Spelling] Did you really mean 'queryable'?
docs/nodes/cardano-node.mdx|18 col 126| [Vale.Terms] Use 'Cardano' instead of 'cardano'.
docs/nodes/cardano-node.mdx|80 col 4| [Vale.Spelling] Did you really mean 'Mithril'?
docs/nodes/cardano-node.mdx|82 col 18| [Vale.Spelling] Did you really mean 'Mithril'?
docs/nodes/cardano-node.mdx|128 col 5| [Midnight.HeadingSentenceCase] 'Install Mithril tooling' should be in sentence case.
docs/nodes/cardano-node.mdx|128 col 13| [Vale.Spelling] Did you really mean 'Mithril'?
docs/nodes/cardano-node.mdx|136 col 9| [Vale.Spelling] Did you really mean 'Mithril'?
docs/nodes/cardano-node.mdx|144 col 50| [Vale.Spelling] Did you really mean 'Mithril'?
docs/nodes/cardano-node.mdx|147 col 19| [Vale.Spelling] Did you really mean 'Mithril'?
docs/nodes/cardano-node.mdx|196 col 5| [Vale.Spelling] Did you really mean 'Mithril'?
docs/nodes/cardano-node.mdx|196 col 150| [Midnight.Readability] 'be used' should be in the active voice.
docs/nodes/cardano-node.mdx|198 col 4| [Midnight.HeadingSentenceCase] 'Setup Cardano relay node' should be in sentence case.
docs/nodes/cardano-node.mdx|239 col 78| [Vale.Spelling] Did you really mean 'config'?
docs/nodes/cardano-node.mdx|241 col 21| [Vale.Spelling] Did you really mean 'config'?
docs/nodes/cardano-node.mdx|258 col 62| [Midnight.Readability] 'be invoked' should be in the active voice.
docs/nodes/cardano-node.mdx|269 col 5| [Midnight.HeadingSentenceCase] 'Inject Mithril snapshot (optional)' should be in sentence case.
docs/nodes/cardano-node.mdx|269 col 12| [Vale.Spelling] Did you really mean 'Mithril'?
docs/nodes/cardano-node.mdx|283 col 8| [Vale.Spelling] Did you really mean 'thedatabase'?
docs/nodes/cardano-node.mdx|283 col 24| [Midnight.Readability] 'been moved' should be in the active voice.
docs/nodes/cardano-node.mdx|289 col 5| [Midnight.HeadingSentenceCase] 'Run Cardano node' should be in sentence case.
docs/nodes/cardano-node.mdx|291 col 30| [Midnight.Readability] 'be invoked' should be in the active voice.
docs/nodes/cardano-node.mdx|291 col 51| [Vale.Spelling] Did you really mean 'config'?
docs/nodes/cardano-node.mdx|291 col 159| [Vale.Spelling] Did you really mean 'Mithril'?
docs/nodes/cardano-node.mdx|323 col 33| [Vale.Spelling] Did you really mean 'mainnet'?
docs/nodes/cardano-node.mdx|361 col 121| [Vale.Spelling] Did you really mean 'mainnet'?
docs/nodes/cardano-node.mdx|361 col 144| [Vale.Spelling] Did you really mean 'testnets'?
docs/nodes/cardano-node.mdx|438 col 8| [Vale.Spelling] Did you really mean 'systemd'?
docs/nodes/node-endpoints.mdx|137 col 4| [Midnight.HeadingSentenceCase] 'Common RPC queries' should be in sentence case.
docs/nodes/node-endpoints.mdx|157 col 5| [Midnight.HeadingSentenceCase] 'List available RPC methods' should be in sentence case.
docs/nodes/node-endpoints.mdx|253 col 26| [Vale.Spelling] Did you really mean 'validator'?
docs/nodes/rpc-node.mdx|13 col 3| [Midnight.HeadingSentenceCase] 'Set up RPC node for Midnight' should be in sentence case.
docs/nodes/rpc-node.mdx|26 col 4| [Midnight.HeadingSentenceCase] 'Run the Midnight node in RPC mode' should be in sentence case.
docs/nodes/rpc-node.mdx|63 col 5| [Midnight.HeadingSentenceCase] 'Configure RPC methods' should be in sentence case.
|
|
||
| :::important | ||
|
|
||
| You need to optimize PostgreSQL when targeting Mainnet or else the Midnight node takes many hours to initialize. |
There was a problem hiding this comment.
🚫 [vale] reported by reviewdog 🐶
[Vale.Spelling] Did you really mean 'Mainnet'?
docs/nodes/index.mdx
Outdated
|
|
||
| * **Initial coin supply**: 100,000,000,000,000,000 units | ||
| * **Distribution**: Split into five outputs each across four wallets (4 × 5 × 5,000,000,000,000,000) | ||
| * **Note**: This configuration is for Testnet use only and *does not* reflect the final Mainnet supply |
There was a problem hiding this comment.
🚫 [vale] reported by reviewdog 🐶
[Vale.Spelling] Did you really mean 'Mainnet'?
docs/nodes/index.mdx
Outdated
|
|
||
| * Initial validator set: 12 trusted nodes operated by Shielded and many more registered nodes operated by the community. | ||
| * The 'D' parameter controls the split of permissioned to registered nodes. | ||
| * Initial validator set: Permissioned nodes operated by Federated Node Operators (FNOs) and registered nodes operated by Stake Pool Operators (SPOs) |
There was a problem hiding this comment.
🚫 [vale] reported by reviewdog 🐶
[Vale.Spelling] Did you really mean 'validator'?
docs/nodes/index.mdx
Outdated
|
|
||
| * Initial validator set: 12 trusted nodes operated by Shielded and many more registered nodes operated by the community. | ||
| * The 'D' parameter controls the split of permissioned to registered nodes. | ||
| * Initial validator set: Permissioned nodes operated by Federated Node Operators (FNOs) and registered nodes operated by Stake Pool Operators (SPOs) |
There was a problem hiding this comment.
🚫 [vale] reported by reviewdog 🐶
[Vale.Spelling] Did you really mean 'Permissioned'?
docs/nodes/index.mdx
Outdated
|
|
||
| * Initial validator set: 12 trusted nodes operated by Shielded and many more registered nodes operated by the community. | ||
| * The 'D' parameter controls the split of permissioned to registered nodes. | ||
| * Initial validator set: Permissioned nodes operated by Federated Node Operators (FNOs) and registered nodes operated by Stake Pool Operators (SPOs) |
There was a problem hiding this comment.
🚫 [vale] reported by reviewdog 🐶
[Vale.Spelling] Did you really mean 'FNOs'?
docs/nodes/index.mdx
Outdated
|
|
||
| * Initial validator set: 12 trusted nodes operated by Shielded and many more registered nodes operated by the community. | ||
| * The 'D' parameter controls the split of permissioned to registered nodes. | ||
| * Initial validator set: Permissioned nodes operated by Federated Node Operators (FNOs) and registered nodes operated by Stake Pool Operators (SPOs) |
There was a problem hiding this comment.
🚫 [vale] reported by reviewdog 🐶
[Vale.Spelling] Did you really mean 'SPOs'?
There was a problem hiding this comment.
Remaining comments which cannot be posted as a review comment to avoid GitHub Rate Limit
vale
docs/nodes/rpc-node.mdx|13 col 3| [Midnight.HeadingSentenceCase] 'Set up RPC node for Midnight' should be in sentence case.
docs/nodes/rpc-node.mdx|26 col 4| [Midnight.HeadingSentenceCase] 'Run the Midnight node in RPC mode' should be in sentence case.
docs/nodes/rpc-node.mdx|63 col 5| [Midnight.HeadingSentenceCase] 'Configure RPC methods' should be in sentence case.
docs/nodes/index.mdx|19 col 44| [Vale.Spelling] Did you really mean 'permissioned'?
docs/nodes/index.mdx|19 col 57| [Vale.Spelling] Did you really mean 'FNOs'?
docs/nodes/index.mdx|19 col 104| [Vale.Spelling] Did you really mean 'SPOs'?
docs/nodes/index.mdx|110 col 77| [Vale.Spelling] Did you really mean 'Mainnet'?
docs/nodes/index.mdx|115 col 11| [Vale.Spelling] Did you really mean 'validator'?
docs/nodes/index.mdx|115 col 26| [Vale.Spelling] Did you really mean 'Permissioned'?
docs/nodes/index.mdx|115 col 83| [Vale.Spelling] Did you really mean 'FNOs'?
docs/nodes/index.mdx|115 col 144| [Vale.Spelling] Did you really mean 'SPOs'?
docs/nodes/index.mdx|116 col 70| [Vale.Spelling] Did you really mean 'permissioned'?
docs/nodes/index.mdx|122 col 12| [Vale.Terms] Use 'Midnight' instead of 'midnight'.
docs/nodes/index.mdx|123 col 12| [Vale.Terms] Use 'Midnight' instead of 'midnight'.
docs/nodes/index.mdx|126 col 87| [Vale.Spelling] Did you really mean 'Mainchain'?
docs/nodes/index.mdx|135 col 56| [Vale.Spelling] Did you really mean 'Schnorrkel'?
docs/nodes/index.mdx|135 col 69| [Vale.Spelling] Did you really mean 'Ristretto'?
docs/nodes/node-endpoints.mdx|137 col 4| [Midnight.HeadingSentenceCase] 'Common RPC queries' should be in sentence case.
docs/nodes/node-endpoints.mdx|157 col 5| [Midnight.HeadingSentenceCase] 'List available RPC methods' should be in sentence case.
docs/nodes/node-endpoints.mdx|253 col 26| [Vale.Spelling] Did you really mean 'validator'?
| source ~/.env | ||
| ``` | ||
|
|
||
| Confirm that the variables are loaded successfully: |
There was a problem hiding this comment.
📝 [vale] reported by reviewdog 🐶
[Midnight.Readability] 'are loaded' should be in the active voice.
| - **Peers**: Look for `IDLE (0 peers)`. If it stays at 0, then check your firewall (port 30333) or the `-bootnodes` address. | ||
| - **Syncing**: You should see `Best: #0 ...` start to increment as it pulls blocks from the network. | ||
|
|
||
| ## Full node vs. archive node |
There was a problem hiding this comment.
[Midnight.HeadingSentenceCase] 'Full node vs. archive node' should be in sentence case.
|
|
||
| ### Run Cardano node | ||
|
|
||
| Starting `cardano-node` must be invoked providing config file paths `~/.local/bin/share/<network: preprod, mainnet, preview>` and database path. However, the Mithril client has already downloaded a snapshot of the *Cardano Preprod* database in `~/cardano-preprod/db`. |
There was a problem hiding this comment.
🚫 [vale] reported by reviewdog 🐶
[Vale.Spelling] Did you really mean 'Mithril'?
| </TabItem> | ||
| </Tabs> | ||
|
|
||
| If you took the snapshot of the mainnet database, then the `node.socket` file is *not* created until the node has completed its internal initialization. The process includes validating the database and replaying any necessary blocks. Therefore, you will need to wait. |
There was a problem hiding this comment.
🚫 [vale] reported by reviewdog 🐶
[Vale.Spelling] Did you really mean 'mainnet'?
| When you run `cardano-cli query tip`, you are asking your local node for its "current view" of the blockchain. Since your node is still syncing, this output represents where your node is currently positioned compared to the total history of the network. | ||
|
|
||
| - **`"block"`**: This is the height of the last block your node has processed. In this case, it has reached block *136,111*. | ||
| - **`"epoch"`**: The current epoch your node is looking at. An epoch is a specific time period, equivalent to 5 days on mainnet, but varies on testnets. The node is currently in *Epoch 10*. |
There was a problem hiding this comment.
🚫 [vale] reported by reviewdog 🐶
[Vale.Spelling] Did you really mean 'mainnet'?
| When you run `cardano-cli query tip`, you are asking your local node for its "current view" of the blockchain. Since your node is still syncing, this output represents where your node is currently positioned compared to the total history of the network. | ||
|
|
||
| - **`"block"`**: This is the height of the last block your node has processed. In this case, it has reached block *136,111*. | ||
| - **`"epoch"`**: The current epoch your node is looking at. An epoch is a specific time period, equivalent to 5 days on mainnet, but varies on testnets. The node is currently in *Epoch 10*. |
There was a problem hiding this comment.
🚫 [vale] reported by reviewdog 🐶
[Vale.Spelling] Did you really mean 'testnets'?
| </TabItem> | ||
| </Tabs> | ||
|
|
||
| Reload systemd to recognize new files: |
There was a problem hiding this comment.
🚫 [vale] reported by reviewdog 🐶
[Vale.Spelling] Did you really mean 'systemd'?
| * Processing privacy-preserving smart contract transactions with zero-knowledge proofs | ||
| * Enforcing protocol rules and maintaining blockchain state integrity | ||
| * Enabling peer-to-peer (P2P) capabilities: node discovery, connection establishment, and block gossip | ||
| * Supporting decentralization through both permissioned FNOs (Federated Node Operators) and registered SPOs (Stake Pool Operators) validators |
There was a problem hiding this comment.
🚫 [vale] reported by reviewdog 🐶
[Vale.Spelling] Did you really mean 'permissioned'?
| * Processing privacy-preserving smart contract transactions with zero-knowledge proofs | ||
| * Enforcing protocol rules and maintaining blockchain state integrity | ||
| * Enabling peer-to-peer (P2P) capabilities: node discovery, connection establishment, and block gossip | ||
| * Supporting decentralization through both permissioned FNOs (Federated Node Operators) and registered SPOs (Stake Pool Operators) validators |
There was a problem hiding this comment.
🚫 [vale] reported by reviewdog 🐶
[Vale.Spelling] Did you really mean 'FNOs'?
| * Processing privacy-preserving smart contract transactions with zero-knowledge proofs | ||
| * Enforcing protocol rules and maintaining blockchain state integrity | ||
| * Enabling peer-to-peer (P2P) capabilities: node discovery, connection establishment, and block gossip | ||
| * Supporting decentralization through both permissioned FNOs (Federated Node Operators) and registered SPOs (Stake Pool Operators) validators |
There was a problem hiding this comment.
🚫 [vale] reported by reviewdog 🐶
[Vale.Spelling] Did you really mean 'SPOs'?
| * **Distribution**: Split into five outputs each across four wallets (4 × 5 × 5,000,000,000,000,000) | ||
|
|
||
| :::note | ||
| This configuration is for Testnet use only and *does not* reflect the final Mainnet supply. |
There was a problem hiding this comment.
🚫 [vale] reported by reviewdog 🐶
[Vale.Spelling] Did you really mean 'Mainnet'?
|
|
||
| * Initial validator set: 12 trusted nodes operated by Shielded and many more registered nodes operated by the community. | ||
| * The 'D' parameter controls the split of permissioned to registered nodes. | ||
| * Initial validator set: Permissioned nodes operated by Federated Node Operators (FNOs) and registered nodes operated by Stake Pool Operators (SPOs). |
There was a problem hiding this comment.
🚫 [vale] reported by reviewdog 🐶
[Vale.Spelling] Did you really mean 'validator'?
| ``` | ||
| Query available RPC methods into a readable file `rpc_methods.json`: | ||
|
|
||
| ### List available RPC methods |
There was a problem hiding this comment.
[Midnight.HeadingSentenceCase] 'List available RPC methods' should be in sentence case.
| - Once imported, you will see the Midnight Node collection in your Insomnia workspace. | ||
| - Expand the collection to view and utilize the available requests. | ||
| - Configure any necessary environment variables if prompted, such as API keys or server URLs. | ||
| - Run a Midnight Node in validator mode to validate transactions and blocks |
There was a problem hiding this comment.
🚫 [vale] reported by reviewdog 🐶
[Vale.Spelling] Did you really mean 'validator'?
| import TabItem from '@theme/TabItem'; | ||
|
|
||
| RPC nodes play a critical role in the Midnight network by exposing APIs that allow developers to interact with the blockchain programmatically. These nodes enable applications to submit transactions, query blockchain data, and more, serving as the bridge between the network and dApp infrastructure. | ||
| # Set up RPC node for Midnight |
There was a problem hiding this comment.
[Midnight.HeadingSentenceCase] 'Set up RPC node for Midnight' should be in sentence case.
| * [Midnight node set up](./full-node#install-midnight-node) with the environment variables set. | ||
|
|
||
| ## Setting Up an RPC Node | ||
| ## Run the Midnight node in RPC mode |
There was a problem hiding this comment.
[Midnight.HeadingSentenceCase] 'Run the Midnight node in RPC mode' should be in sentence case.
| </Tabs> | ||
|
|
||
| Monitor the node's logs to ensure it syncs with the network: | ||
| ### Configure RPC methods |
There was a problem hiding this comment.
[Midnight.HeadingSentenceCase] 'Configure RPC methods' should be in sentence case.
|
We should definitely not do away with docker, having both is good. Docker for local setup is super important for newbies especially. Unless I am missing something. |
|
@gyrationtechs - LMK when you are ready for my review. |
Summary
Details
The Nodes documentation section has been rewritten to provide a more practical, end-to-end guide for operators setting up Midnight infrastructure. Each node type (Cardano node, Cardano-db-sync, Midnight full node, boot node, RPC node) now has a self-contained guide with prerequisites, installation steps, and verification commands. Network-specific configuration (Preview vs Preprod) uses Docusaurus tabs for clarity.