Skip to content

feat: added websockets page#750

Merged
keenbeen32 merged 3 commits intomainfrom
kv/wss
Dec 3, 2025
Merged

feat: added websockets page#750
keenbeen32 merged 3 commits intomainfrom
kv/wss

Conversation

@keenbeen32
Copy link
Collaborator

@keenbeen32 keenbeen32 commented Dec 3, 2025

Added a page for websockets under tutorials section in hyperindex docs.

Included an example on how to use it (tested the example as well).

Summary by CodeRabbit

  • Documentation

    • Added a WebSockets tutorial for the GraphQL endpoint with protocol mappings and usage examples
    • Added Optimism (Network ID 10) to HyperRPC and HyperSync supported networks lists
  • Chores

    • Updated sidebar to include the new WebSockets tutorial link
    • Reordered supported networks listing (no additions or removals)

✏️ Tip: You can customize this high-level summary in your review settings.

@vercel
Copy link

vercel bot commented Dec 3, 2025

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Preview Comments Updated (UTC)
envio-docs Ready Ready Preview Comment Dec 3, 2025 2:26pm

@coderabbitai
Copy link
Contributor

coderabbitai bot commented Dec 3, 2025

Walkthrough

Added a new WebSocket tutorial for GraphQL endpoints, inserted Optimism (Network ID 10) entries into HyperRPC and HyperSync docs, registered the tutorial in the sidebar, and reordered entries in supported-networks.json (no other network additions).

Changes

Cohort / File(s) Summary
WebSocket Documentation
docs/HyperIndex/Tutorials/websockets.md
New tutorial documenting WebSocket usage with the GraphQL endpoint: protocol mappings (HTTPS→WSS, HTTP→WS), example URL transformations, TypeScript graphql-ws example, installation steps, and support contact info.
Network Documentation
docs/HyperRPC/hyperrpc-supported-networks.md, docs/HyperSync/hypersync-supported-networks.md
Added Optimism (Network ID 10) entry with endpoint URLs to both supported-networks tables (one file contains a duplicated Optimism row).
Sidebar
sidebarsHyperIndex.js
Added Tutorials/websockets to the Tutorials list in the sidebar configuration.
Network Configuration
supported-networks.json
Reordered entries within the supported networks array; entries unchanged other than ordering.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10–15 minutes

  • Confirm and remove the duplicated Optimism row in docs/HyperRPC/hyperrpc-supported-networks.md.
  • Verify consistency of Optimism Network ID and endpoint URLs across docs/HyperRPC/..., docs/HyperSync/..., and any authoritative source.
  • Ensure Tutorials/websockets path matches routing/sidebar conventions.

Possibly related PRs

Suggested reviewers

  • DZakh
  • DenhamPreen
  • moose-code

Poem

🐰 I nibbled lines and stitched a thread,
A websocket path where queries tread,
Optimism hopped into the map,
Sidebar lit a tiny gap,
Hooray — docs snug in one new lap! 🥕✨

Pre-merge checks and finishing touches

✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title 'feat: added websockets page' directly aligns with the main change—adding a new WebSockets documentation page to the tutorials section. It accurately summarizes the primary objective of the PR.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
✨ Finishing touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch kv/wss

📜 Recent review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 1367c7d and 8573560.

📒 Files selected for processing (1)
  • docs/HyperIndex/Tutorials/websockets.md (1 hunks)
🧰 Additional context used
🧠 Learnings (1)
📓 Common learnings
Learnt from: DenhamPreen
Repo: enviodev/docs PR: 673
File: docs/HyperIndex/supported-networks/chainweb-testnet-21.md:14-16
Timestamp: 2025-07-29T14:30:03.677Z
Learning: Chainweb Testnet 20 (ID: 5920) and Chainweb Testnet 21 (ID: 5921) have non-functional HyperSync endpoints that return HTTP 404, indicating these networks are not properly supported and should be removed from documentation.
🪛 markdownlint-cli2 (0.18.1)
docs/HyperIndex/Tutorials/websockets.md

37-37: Fenced code blocks should have a language specified

(MD040, fenced-code-language)


43-43: Fenced code blocks should have a language specified

(MD040, fenced-code-language)


49-49: Fenced code blocks should have a language specified

(MD040, fenced-code-language)


55-55: Fenced code blocks should have a language specified

(MD040, fenced-code-language)

🔇 Additional comments (3)
docs/HyperIndex/Tutorials/websockets.md (3)

11-22: WebSocket support guidance is clear and well-contextual.

The warning about non-dedicated plans and the specific guidance on concurrent connection limits (10+) is appropriately emphasized and directly addresses practical concerns for users.


63-106: TypeScript example is well-structured and practical.

The example demonstrates proper error handling (next/error/complete callbacks), type definitions, and realistic GraphQL subscription patterns. The code is clear, testable, and directly useful for developers.


112-120: Installation and support sections are complete.

Installation instructions are clear with both npm and yarn options. The support contact section includes both Telegram and Discord links as requested in earlier feedback.


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 2

📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 55fe6cf and 9d1b880.

📒 Files selected for processing (5)
  • docs/HyperIndex/Tutorials/websockets.md (1 hunks)
  • docs/HyperRPC/hyperrpc-supported-networks.md (1 hunks)
  • docs/HyperSync/hypersync-supported-networks.md (1 hunks)
  • sidebarsHyperIndex.js (1 hunks)
  • supported-networks.json (1 hunks)
🧰 Additional context used
🧠 Learnings (2)
📓 Common learnings
Learnt from: DenhamPreen
Repo: enviodev/docs PR: 673
File: docs/HyperIndex/supported-networks/chainweb-testnet-21.md:14-16
Timestamp: 2025-07-29T14:30:03.677Z
Learning: Chainweb Testnet 20 (ID: 5920) and Chainweb Testnet 21 (ID: 5921) have non-functional HyperSync endpoints that return HTTP 404, indicating these networks are not properly supported and should be removed from documentation.
📚 Learning: 2025-07-29T14:30:03.677Z
Learnt from: DenhamPreen
Repo: enviodev/docs PR: 673
File: docs/HyperIndex/supported-networks/chainweb-testnet-21.md:14-16
Timestamp: 2025-07-29T14:30:03.677Z
Learning: Chainweb Testnet 20 (ID: 5920) and Chainweb Testnet 21 (ID: 5921) have non-functional HyperSync endpoints that return HTTP 404, indicating these networks are not properly supported and should be removed from documentation.

Applied to files:

  • docs/HyperSync/hypersync-supported-networks.md
  • docs/HyperRPC/hyperrpc-supported-networks.md
  • supported-networks.json
🪛 markdownlint-cli2 (0.18.1)
docs/HyperIndex/Tutorials/websockets.md

37-37: Fenced code blocks should have a language specified

(MD040, fenced-code-language)


43-43: Fenced code blocks should have a language specified

(MD040, fenced-code-language)


49-49: Fenced code blocks should have a language specified

(MD040, fenced-code-language)


55-55: Fenced code blocks should have a language specified

(MD040, fenced-code-language)

🔇 Additional comments (3)
sidebarsHyperIndex.js (1)

95-104: WebSockets tutorial correctly wired into the sidebar

"Tutorials/websockets" matches the new doc and keeps the Tutorials section consistent. No issues here.

docs/HyperRPC/hyperrpc-supported-networks.md (1)

79-82: Optimism HyperRPC entry looks consistent

The Optimism (ID 10) row matches the existing URL pattern and table formatting, and the placement near Opbnb/Optimism Sepolia is consistent. No changes requested.

docs/HyperSync/hypersync-supported-networks.md (1)

87-89: Optimism HyperSync row is correctly added

The Optimism (ID 10) entry follows the existing URL, tier, and column conventions and is placed correctly between Opbnb and Optimism Sepolia.

Comment on lines +37 to +57
```
https://indexer.hyperindex.xyz/123abcd/graphql
```

You can connect via WebSocket using:

```
wss://indexer.hyperindex.xyz/123abcd/graphql
```

Similarly, for HTTP endpoints:

```
http://localhost:8080/v1/graphql
```

Becomes:

```
ws://localhost:8080/v1/graphql
```
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor

Add fenced code block languages to fix markdownlint MD040

The four plain URL blocks don’t declare a language, which triggers MD040 from markdownlint. Mark them as text to keep linting clean.

-```
+```text
 https://indexer.hyperindex.xyz/123abcd/graphql


- +text
wss://indexer.hyperindex.xyz/123abcd/graphql

…
-```
+```text
http://localhost:8080/v1/graphql


- +text
ws://localhost:8080/v1/graphql

🧰 Tools
🪛 markdownlint-cli2 (0.18.1)

37-37: Fenced code blocks should have a language specified

(MD040, fenced-code-language)


43-43: Fenced code blocks should have a language specified

(MD040, fenced-code-language)


49-49: Fenced code blocks should have a language specified

(MD040, fenced-code-language)


55-55: Fenced code blocks should have a language specified

(MD040, fenced-code-language)

🤖 Prompt for AI Agents
In docs/HyperIndex/Tutorials/websockets.md around lines 37 to 57, the four
fenced code blocks are plain URL blocks causing markdownlint MD040; update each
fence to declare the language as "text" (i.e., change ``` to ```text for each of
the four URL blocks) so the linter is satisfied while keeping the block contents
unchanged.

"supported-networks/local-anvil",
"supported-networks/local-hardhat",
"supported-networks/0g-newton-testnet","supported-networks/ab","supported-networks/abstract","supported-networks/aleph-zero-evm","supported-networks/altlayer-op-demo-testnet","supported-networks/ancient8","supported-networks/arbitrum","supported-networks/arbitrum-blueberry","supported-networks/arbitrum-nova","supported-networks/arbitrum-sepolia","supported-networks/arc-testnet","supported-networks/artela-testnet","supported-networks/arthera-mainnet","supported-networks/asset-chain-mainnet","supported-networks/astar-zkevm","supported-networks/astar-zkyoto","supported-networks/aurora","supported-networks/aurora-turbo","supported-networks/avalanche","supported-networks/b2-hub-testnet","supported-networks/b3","supported-networks/b3-sepolia-testnet","supported-networks/base","supported-networks/base-sepolia","supported-networks/beam","supported-networks/berachain","supported-networks/berachain-artio-testnet","supported-networks/bevm-mainnet","supported-networks/bevm-testnet","supported-networks/bitfinity-mainnet","supported-networks/bitfinity-testnet","supported-networks/bitgert-mainnet","supported-networks/bitlayer","supported-networks/blast","supported-networks/blast-sepolia","supported-networks/bob-mainnet","supported-networks/boba","supported-networks/boba-bnb-mainnet","supported-networks/botanix-testnet","supported-networks/bsc","supported-networks/bsc-testnet","supported-networks/canto","supported-networks/canto-testnet","supported-networks/celo","supported-networks/celo-alfajores-testnet","supported-networks/chiliz","supported-networks/chiliz-testnet-spicy","supported-networks/citrea-devnet","supported-networks/citrea-testnet","supported-networks/core","supported-networks/creator-testnet","supported-networks/cronos-zkevm","supported-networks/cronos-zkevm-testnet","supported-networks/crossfi-mainnet","supported-networks/crossfi-mainnet","supported-networks/crossfi-testnet","supported-networks/curtis","supported-networks/cyber","supported-networks/degen-chain","supported-networks/dfk-chain","supported-networks/dogechain-mainnet","supported-networks/dogechain-testnet","supported-networks/dos-chain","supported-networks/energy-web","supported-networks/eos","supported-networks/eth","supported-networks/etherlink-testnet","supported-networks/exosama","supported-networks/fantom","supported-networks/fantom-testnet","supported-networks/flare","supported-networks/flare-songbird","supported-networks/flow","supported-networks/flow-testnet","supported-networks/fraxtal","supported-networks/fuel-mainnet","supported-networks/fuel-testnet","supported-networks/fuji","supported-networks/gnosis","supported-networks/gnosis-chiado","supported-networks/gravity-alpha-mainnet","supported-networks/harmony-shard-0","supported-networks/heco-chain","supported-networks/holesky","supported-networks/hyperliquid","supported-networks/immutable-zkevm","supported-networks/immutable-zkevm-testnet","supported-networks/ink","supported-networks/iotex-network","supported-networks/japan-open-chain","supported-networks/kaia","supported-networks/kakarot-starknet-sepolia","supported-networks/kroma","supported-networks/layeredge-testnet","supported-networks/lightlink-pegasus-testnet","supported-networks/lightlink-phoenix","supported-networks/linea","supported-networks/lisk","supported-networks/lukso","supported-networks/lukso-testnet","supported-networks/manta","supported-networks/manta-pacific-sepolia","supported-networks/mantle","supported-networks/megaeth-testnet","supported-networks/megaeth-testnet2","supported-networks/merlin","supported-networks/metall2","supported-networks/meter-mainnet","supported-networks/meter-testnet","supported-networks/mev-commit","supported-networks/mint-mainnet","supported-networks/mode","supported-networks/monad","supported-networks/monad-testnet","supported-networks/moonbase-alpha","supported-networks/moonbeam","supported-networks/morph","supported-networks/nautilus","supported-networks/neo-x-testnet","supported-networks/nibiru-testnet","supported-networks/now-chaint","supported-networks/oasis-emerald","supported-networks/oasis-sapphire","supported-networks/onigiri-subnet","supported-networks/onigiri-test-subnet","supported-networks/ontology-mainnet","supported-networks/ontology-testnet","supported-networks/op-celestia-raspberry","supported-networks/opbnb","supported-networks/optimism-sepolia","supported-networks/optopia","supported-networks/peaq","supported-networks/plasma","supported-networks/plume","supported-networks/polygon","supported-networks/polygon-amoy","supported-networks/polygon-zkevm","supported-networks/polygon-zkevm-cardona-testnet","supported-networks/public-goods-network","supported-networks/pulsechain","supported-networks/puppynet-shibarium","supported-networks/ronin","supported-networks/rootstock","supported-networks/saakuru","supported-networks/satoshivm","supported-networks/scroll","supported-networks/scroll-sepolia","supported-networks/sentient","supported-networks/sentient-testnet","supported-networks/sepolia","supported-networks/shibarium","supported-networks/shimmer-evm","supported-networks/skale-europa","supported-networks/soneium","supported-networks/sonic","supported-networks/sonic-testnet","supported-networks/sophon","supported-networks/sophon-testnet","supported-networks/stratovm-testnet","supported-networks/superseed","supported-networks/superseed-sepolia-testnet","supported-networks/swell","supported-networks/taiko","supported-networks/tanssi-demo","supported-networks/taraxa","supported-networks/telos-evm-mainnet","supported-networks/telos-evm-testnet","supported-networks/torus-mainnet","supported-networks/torus-testnet","supported-networks/unichain","supported-networks/unicorn-ultra-nebulas-testnet","supported-networks/velas-mainnet","supported-networks/viction","supported-networks/worldchain","supported-networks/x-layer-mainnet","supported-networks/x-layer-testnet","supported-networks/xdc","supported-networks/xdc-testnet","supported-networks/zeta","supported-networks/zeta-testnet","supported-networks/zircuit","supported-networks/zklink-nova-mainnet","supported-networks/zksync","supported-networks/zksync-sepolia-testnet","supported-networks/zora","supported-networks/zora-sepolia"]} No newline at end of file
"supported-networks/0g-newton-testnet","supported-networks/ab","supported-networks/abstract","supported-networks/aleph-zero-evm","supported-networks/altlayer-op-demo-testnet","supported-networks/ancient8","supported-networks/arbitrum","supported-networks/arbitrum-blueberry","supported-networks/arbitrum-nova","supported-networks/arbitrum-sepolia","supported-networks/arc-testnet","supported-networks/artela-testnet","supported-networks/arthera-mainnet","supported-networks/asset-chain-mainnet","supported-networks/astar-zkevm","supported-networks/astar-zkyoto","supported-networks/aurora","supported-networks/aurora-turbo","supported-networks/avalanche","supported-networks/b2-hub-testnet","supported-networks/b3","supported-networks/b3-sepolia-testnet","supported-networks/base","supported-networks/base-sepolia","supported-networks/beam","supported-networks/berachain","supported-networks/berachain-artio-testnet","supported-networks/bevm-mainnet","supported-networks/bevm-testnet","supported-networks/bitfinity-mainnet","supported-networks/bitfinity-testnet","supported-networks/bitgert-mainnet","supported-networks/bitlayer","supported-networks/blast","supported-networks/blast-sepolia","supported-networks/bob-mainnet","supported-networks/boba","supported-networks/boba-bnb-mainnet","supported-networks/botanix-testnet","supported-networks/bsc","supported-networks/bsc-testnet","supported-networks/canto","supported-networks/canto-testnet","supported-networks/celo","supported-networks/celo-alfajores-testnet","supported-networks/chiliz","supported-networks/chiliz-testnet-spicy","supported-networks/citrea-devnet","supported-networks/citrea-testnet","supported-networks/core","supported-networks/creator-testnet","supported-networks/cronos-zkevm","supported-networks/cronos-zkevm-testnet","supported-networks/crossfi-mainnet","supported-networks/crossfi-mainnet","supported-networks/crossfi-testnet","supported-networks/curtis","supported-networks/cyber","supported-networks/degen-chain","supported-networks/dfk-chain","supported-networks/dogechain-mainnet","supported-networks/dogechain-testnet","supported-networks/dos-chain","supported-networks/energy-web","supported-networks/eos","supported-networks/eth","supported-networks/etherlink-testnet","supported-networks/exosama","supported-networks/fantom","supported-networks/fantom-testnet","supported-networks/flare","supported-networks/flare-songbird","supported-networks/flow","supported-networks/flow-testnet","supported-networks/fraxtal","supported-networks/fuel-mainnet","supported-networks/fuel-testnet","supported-networks/fuji","supported-networks/gnosis","supported-networks/gnosis-chiado","supported-networks/gravity-alpha-mainnet","supported-networks/harmony-shard-0","supported-networks/heco-chain","supported-networks/holesky","supported-networks/hyperliquid","supported-networks/immutable-zkevm","supported-networks/immutable-zkevm-testnet","supported-networks/ink","supported-networks/iotex-network","supported-networks/japan-open-chain","supported-networks/kaia","supported-networks/kakarot-starknet-sepolia","supported-networks/kroma","supported-networks/layeredge-testnet","supported-networks/lightlink-pegasus-testnet","supported-networks/lightlink-phoenix","supported-networks/linea","supported-networks/lisk","supported-networks/lukso","supported-networks/lukso-testnet","supported-networks/manta","supported-networks/manta-pacific-sepolia","supported-networks/mantle","supported-networks/megaeth-testnet","supported-networks/megaeth-testnet2","supported-networks/merlin","supported-networks/metall2","supported-networks/meter-mainnet","supported-networks/meter-testnet","supported-networks/mev-commit","supported-networks/mint-mainnet","supported-networks/mode","supported-networks/monad","supported-networks/monad-testnet","supported-networks/moonbase-alpha","supported-networks/moonbeam","supported-networks/morph","supported-networks/nautilus","supported-networks/neo-x-testnet","supported-networks/nibiru-testnet","supported-networks/now-chaint","supported-networks/oasis-emerald","supported-networks/oasis-sapphire","supported-networks/onigiri-subnet","supported-networks/onigiri-test-subnet","supported-networks/ontology-mainnet","supported-networks/ontology-testnet","supported-networks/op-celestia-raspberry","supported-networks/opbnb","supported-networks/optimism","supported-networks/optimism-sepolia","supported-networks/optopia","supported-networks/peaq","supported-networks/plasma","supported-networks/plume","supported-networks/polygon","supported-networks/polygon-amoy","supported-networks/polygon-zkevm","supported-networks/polygon-zkevm-cardona-testnet","supported-networks/public-goods-network","supported-networks/pulsechain","supported-networks/puppynet-shibarium","supported-networks/ronin","supported-networks/rootstock","supported-networks/saakuru","supported-networks/satoshivm","supported-networks/scroll","supported-networks/scroll-sepolia","supported-networks/sentient","supported-networks/sentient-testnet","supported-networks/sepolia","supported-networks/shibarium","supported-networks/shimmer-evm","supported-networks/skale-europa","supported-networks/soneium","supported-networks/sonic","supported-networks/sonic-testnet","supported-networks/sophon","supported-networks/sophon-testnet","supported-networks/stratovm-testnet","supported-networks/superseed","supported-networks/superseed-sepolia-testnet","supported-networks/swell","supported-networks/taiko","supported-networks/tanssi-demo","supported-networks/taraxa","supported-networks/telos-evm-mainnet","supported-networks/telos-evm-testnet","supported-networks/torus-mainnet","supported-networks/torus-testnet","supported-networks/unichain","supported-networks/unicorn-ultra-nebulas-testnet","supported-networks/velas-mainnet","supported-networks/viction","supported-networks/worldchain","supported-networks/x-layer-mainnet","supported-networks/x-layer-testnet","supported-networks/xdc","supported-networks/xdc-testnet","supported-networks/zeta","supported-networks/zeta-testnet","supported-networks/zircuit","supported-networks/zklink-nova-mainnet","supported-networks/zksync","supported-networks/zksync-sepolia-testnet","supported-networks/zora","supported-networks/zora-sepolia"]} No newline at end of file
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor

Remove duplicate crossfi-mainnet and consider restoring multiline formatting

Two minor points in this updated list:

  1. supported-networks/crossfi-mainnet appears twice in the array; this will likely show up as a duplicate sidebar entry. Recommend keeping it only once.
  2. The entire tail of the array is now on a single line, which makes diffs and edits harder. Consider reverting to one-entry-per-line formatting for consistency with the first three entries and better maintainability.
🤖 Prompt for AI Agents
In supported-networks.json around line 5, the array contains a duplicate entry
"supported-networks/crossfi-mainnet" and the remainder of the array has been
collapsed into a single long line; remove the duplicate occurrence of
"supported-networks/crossfi-mainnet" and reformat the JSON array so each network
string is on its own line (one-entry-per-line) with correct commas and valid
JSON syntax to restore readability and produce clean diffs.


## Getting Support

For any questions about WebSocket usage, contact the Envio team via [Telegram](https://t.me/envio) or [Discord](https://discord.com/invite/gt7yEUZKeB).
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
For any questions about WebSocket usage, contact the Envio team via [Telegram](https://t.me/envio) or [Discord](https://discord.com/invite/gt7yEUZKeB).
For any questions about WebSocket usage, contact the Envio team via [Telegram](https://t.me/envio) or [Discord](https://discord.gg/envio).

WebSocket connections are available with different levels of support depending on your hosting plan:

- **Dedicated**: WebSockets are fully supported. The dedicated package includes additional infrastructure such as connection pooling which enables proper WebSocket support.
- **Other Plans**: WebSocket support is available but should be used at your own risk. These plans do not have the same infrastructure support for websockets as dedicated.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please add something that gives this more context

Something like this can, for example, only support, depending on the use case, up to 20 subscriptions concurrently before the server will struggle, or something along those lines.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sweet will do

Copy link
Contributor

@DenhamPreen DenhamPreen left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

just the number limit please for non dedicated wss support

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 9d1b880 and 1367c7d.

📒 Files selected for processing (1)
  • docs/HyperIndex/Tutorials/websockets.md (1 hunks)
🧰 Additional context used
🧠 Learnings (1)
📓 Common learnings
Learnt from: DenhamPreen
Repo: enviodev/docs PR: 673
File: docs/HyperIndex/supported-networks/chainweb-testnet-21.md:14-16
Timestamp: 2025-07-29T14:30:03.677Z
Learning: Chainweb Testnet 20 (ID: 5920) and Chainweb Testnet 21 (ID: 5921) have non-functional HyperSync endpoints that return HTTP 404, indicating these networks are not properly supported and should be removed from documentation.
🪛 markdownlint-cli2 (0.18.1)
docs/HyperIndex/Tutorials/websockets.md

41-41: Fenced code blocks should have a language specified

(MD040, fenced-code-language)


47-47: Fenced code blocks should have a language specified

(MD040, fenced-code-language)


53-53: Fenced code blocks should have a language specified

(MD040, fenced-code-language)


59-59: Fenced code blocks should have a language specified

(MD040, fenced-code-language)

🔇 Additional comments (3)
docs/HyperIndex/Tutorials/websockets.md (3)

1-26: Well-structured documentation with appropriate context on WebSocket limitations.

The documentation clearly explains WebSocket support across different hosting plans and provides helpful context about concurrent subscription limits. This addresses concerns about making the constraints transparent to users. The frontmatter is properly configured for navigation integration.


67-110: Verify the TypeScript example is tested and functional.

The subscription example looks well-structured with proper type definitions and error handling. Since you mentioned the example was tested, please confirm the library versions in the subscription query format match the current graphql-ws API to ensure the example works for readers following along.


112-120: Installation instructions are clear.

The section provides both npm and yarn alternatives, making it accessible to different developer preferences.


If your GraphQL endpoint is:

```
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟠 Major

Fix markdownlint MD040 errors in fenced code blocks.

The four URL blocks lack language specifications, triggering markdownlint MD040. This issue was flagged in a previous review. Mark each block as text to satisfy the linter while preserving the URL content.

-```
+```text
 https://indexer.hyperindex.xyz/123abcd/graphql
-```
+```text

-```
+```text
 wss://indexer.hyperindex.xyz/123abcd/graphql
-```
+```text

-```
+```text
 http://localhost:8080/v1/graphql
-```
+```text

-```
+```text
 ws://localhost:8080/v1/graphql
-```
+```text

Also applies to: 47-47, 53-53, 59-59

🧰 Tools
🪛 markdownlint-cli2 (0.18.1)

41-41: Fenced code blocks should have a language specified

(MD040, fenced-code-language)

🤖 Prompt for AI Agents
In docs/HyperIndex/Tutorials/websockets.md around lines 41,47,53 and 59, four
fenced code blocks containing only URLs are missing language tags and trigger
markdownlint MD040; update each of those triple-backtick fences to use ```text
(i.e., mark each fenced block as text) so the blocks are explicitly
language-specified while leaving the URL contents unchanged.

@keenbeen32 keenbeen32 merged commit 712bd34 into main Dec 3, 2025
3 checks passed
@keenbeen32 keenbeen32 deleted the kv/wss branch December 3, 2025 14:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants