Skip to content

Improve agent discovery of llms.txt#925

Open
nikbhintade wants to merge 1 commit into
mainfrom
nb/agent-visibility
Open

Improve agent discovery of llms.txt#925
nikbhintade wants to merge 1 commit into
mainfrom
nb/agent-visibility

Conversation

@nikbhintade
Copy link
Copy Markdown
Member

@nikbhintade nikbhintade commented May 18, 2026

  • Add plugin-llms-directive: inject , alternate markdown links, meta tag, and hidden anchor into every page so crawlers can locate the llms.txt index.
  • Prepend an llms.txt blockquote to every generated .md copy.
  • Append an auto-bucketed index of uncovered docs to llms.txt to push sitemap coverage past 80% without hand-maintaining bullet lists.
  • Focus sitemap via ignorePatterns (drop v2, *-LLM, tag/author/archive).
  • Vercel: content-negotiate .md for /docs and /blog when Accept contains text/markdown; redirect contract-import to quickstart.
  • Refresh generated network-count and blog-posts-index.

Summary by CodeRabbit

  • New Features

    • Enhanced documentation discovery for AI and LLM tools with improved indexing
    • Added new blog posts covering production indexing and AI-related topics
  • Documentation

    • Improved documentation routing and permanent redirects for better user experience

Review Change Stack

- Add plugin-llms-directive: inject <link rel="llms-txt">, alternate
  markdown links, meta tag, and hidden anchor into every page so
  crawlers can locate the llms.txt index.
- Prepend an llms.txt blockquote to every generated .md copy.
- Append an auto-bucketed index of uncovered docs to llms.txt to push
  sitemap coverage past 80% without hand-maintaining bullet lists.
- Focus sitemap via ignorePatterns (drop v2, *-LLM, tag/author/archive).
- Vercel: content-negotiate .md for /docs and /blog when Accept
  contains text/markdown; redirect contract-import to quickstart.
- Refresh generated network-count and blog-posts-index.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@nikbhintade nikbhintade requested a review from Jordy-Baby as a code owner May 18, 2026 09:32
@vercel
Copy link
Copy Markdown

vercel Bot commented May 18, 2026

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

Project Deployment Actions Updated (UTC)
envio-docs Ready Ready Preview, Comment May 18, 2026 9:35am

Request Review

@nikbhintade nikbhintade removed the request for review from Jordy-Baby May 18, 2026 09:33
@nikbhintade nikbhintade self-assigned this May 18, 2026
@nikbhintade nikbhintade requested a review from keenbeen32 May 18, 2026 09:33
@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented May 18, 2026

📝 Walkthrough

Walkthrough

This PR introduces LLM agent discovery infrastructure by adding a plugin that injects HTML signals on every page, enhances content generation to include directive backlinks and uncovered document indexing, updates sitemap and routing configuration, and refreshes content indexes. The changes enable agents to discover and navigate the documentation via llms.txt and llms-full.txt.

Changes

LLM Agent Discovery and Content Indexing

Layer / File(s) Summary
LLM Discovery Plugin
plugins/plugin-llms-directive.js
New Docusaurus plugin (envio-llms-directive) injects HTML discovery signals via <link rel="llms-txt">, <meta name="llms-txt">, and hidden anchor elements pointing to /llms.txt and /llms-full.txt for agent accessibility.
Configuration and Sitemap Management
docusaurus.config.js
Plugin registered in the plugins array; sitemap configuration adds ignorePatterns to exclude v2 docs, LLM route bases (HyperIndex-LLM, HyperSync-LLM, HyperRPC-LLM), and blog archive routes; llms.txt template link for HyperIndex Quickstart updated from contract-import.md to quickstart.md.
Content Generation with Directives and Uncovered Index
plugins/plugin-generate-llms.js
Adds MD_LLMS_DIRECTIVE blockquote prepended to every generated markdown file with backlinks to llms.txt and llms-full.txt; introduces renderUncoveredIndex() helper that parses already-linked URLs and groups remaining docs into network pages, reference, and blog buckets for markdown rendering; main output appends uncovered-index content to llms.txt.
Markdown Serving and URL Routing
vercel.json
Adds rewrites to serve /docs/:path and /blog/:path as markdown files when the Accept header matches markdown; extends redirects with permanent mappings from /docs/HyperIndex/contract-import (and .md variant) to /docs/HyperIndex/quickstart destinations.
Content Index and Metadata Updates
static/blog-posts-index.json, src/data/network-count.json
Blog posts index prepends 2026-05-14 entries including "Production Indexer Reliability with HyperIndex" and AI/onchain-related posts; network data generatedAt timestamp updated to 2026-05-18T09:29:23.922Z.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~25 minutes

Possibly related PRs

  • enviodev/docs#868: Both PRs modify plugins/plugin-generate-llms.js to adjust how llms.txt/markdown output coverage is produced, making the changes strongly related at the same generation points.
  • enviodev/docs#816: Both PRs modify the LLM documentation indexing/llms.txt generation pipeline—plugin-generate-llms.js and the docusaurus.config.js content used to produce llms.txt are changed in ways that affect the generated llms.txt structure/content.
  • enviodev/docs#883: Both PRs modify plugins/plugin-generate-llms.js around emitting and referencing llms-full.txt, with the main PR adding directive/backlink content and appending uncovered-index to llms.txt.

Suggested reviewers

  • Jordy-Baby
  • moose-code
🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title 'Improve agent discovery of llms.txt' directly and specifically describes the main change: adding mechanisms to help agents/crawlers discover the llms.txt file through HTML injection, metadata, and discovery signals.
Docstring Coverage ✅ Passed Docstring coverage is 80.00% which is sufficient. The required threshold is 80.00%.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch

Warning

There were issues while running some tools. Please review the errors and either fix the tool's configuration or disable the tool if it's a critical failure.

🔧 ESLint

If the error stems from missing dependencies, add them to the package.json file. For unrecoverable errors (e.g., due to private dependencies), disable the tool in the CodeRabbit configuration.

ESLint skipped: no ESLint configuration detected in root package.json. To enable, add eslint to devDependencies.


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
Copy Markdown
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: 4

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@plugins/plugin-generate-llms.js`:
- Around line 326-338: The matcher for supported networks is too strict: the
current checks using /\/supported-networks\//.test(doc.filePath) (near the
bucket assignments for "HyperIndex Network Pages", "HyperSync Network Pages",
"HyperRPC Network Pages") miss files named like supported-networks.md; update
the condition to detect the substring "supported-networks" in file paths or
filenames (for example replace the regex with a looser check such as
/supported-networks(?:[\/\.]|$)/.test(doc.filePath) or simply
doc.filePath.includes('supported-networks')) so those docs are correctly routed
into the intended buckets.

In `@plugins/plugin-llms-directive.js`:
- Line 54: The offscreen anchor string that uses LLMS_URL_ABS (the `<a ...>Envio
docs llms.txt — agent-facing documentation index</a>`) is visually hidden but
still focusable and exposed to assistive tech; update the anchor to be
non-focusable and hidden from AT by adding tabindex="-1" and aria-hidden="true"
(or role="presentation") while keeping the existing visual-hide styling so it no
longer creates an invisible tab stop or appears to screen readers.

In `@static/blog-posts-index.json`:
- Line 1: The JSON index has an empty "date" for the entry with permalink
"/blog/migrating-alchemy-subgraphs-to-envio" (title "How to Migrate Alchemy
Subgraphs to Envio"); populate its "date" value with the correct publish date in
the same YYYY-MM-DD format used by other entries (e.g., "2026-05-14" or the
actual intended publish date) and ensure the entry remains valid JSON so
consumers that sort by date won't break.

In `@vercel.json`:
- Around line 13-24: The rewrite rules for "/docs/:path(...)" and
"/blog/:path(...)" miss exact-root matches, so add two exact-path rewrite
entries with "source": "/docs" -> "destination": "/docs.md" and "source":
"/blog" -> "destination": "/blog.md" and include the same "has" header check
(Accept: .*text/markdown.*); place these two new entries immediately before the
existing parametrized rules so bare requests to /docs and /blog with Accept:
text/markdown are rewritten correctly.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: efbf9cfc-6221-48c2-afc9-fc2450e9dd22

📥 Commits

Reviewing files that changed from the base of the PR and between 6c44cdb and 2a04656.

📒 Files selected for processing (6)
  • docusaurus.config.js
  • plugins/plugin-generate-llms.js
  • plugins/plugin-llms-directive.js
  • src/data/network-count.json
  • static/blog-posts-index.json
  • vercel.json

Comment on lines +326 to +338
/\/HyperIndex\//.test(url) &&
/\/supported-networks\//.test(doc.filePath)
) {
bucket = "HyperIndex Network Pages";
} else if (
/\/HyperSync\//.test(url) &&
/\/supported-networks\//.test(doc.filePath)
) {
bucket = "HyperSync Network Pages";
} else if (
/\/HyperRPC\//.test(url) &&
/\/supported-networks\//.test(doc.filePath)
) {
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Supported-networks matcher is too strict and misses target files.

Lines 327/332/337 check for "/supported-networks/" in doc.filePath, but these pages are typically filenames like supported-networks.md. That prevents the intended network-page buckets from being used.

Suggested fix
-                        /\/supported-networks\//.test(doc.filePath)
+                        /\/supported-networks(\.|\/)/.test(doc.filePath)
...
-                        /\/supported-networks\//.test(doc.filePath)
+                        /\/supported-networks(\.|\/)/.test(doc.filePath)
...
-                        /\/supported-networks\//.test(doc.filePath)
+                        /\/supported-networks(\.|\/)/.test(doc.filePath)
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
/\/HyperIndex\//.test(url) &&
/\/supported-networks\//.test(doc.filePath)
) {
bucket = "HyperIndex Network Pages";
} else if (
/\/HyperSync\//.test(url) &&
/\/supported-networks\//.test(doc.filePath)
) {
bucket = "HyperSync Network Pages";
} else if (
/\/HyperRPC\//.test(url) &&
/\/supported-networks\//.test(doc.filePath)
) {
/\/HyperIndex\//.test(url) &&
/\/supported-networks(\.|\/)/.test(doc.filePath)
) {
bucket = "HyperIndex Network Pages";
} else if (
/\/HyperSync\//.test(url) &&
/\/supported-networks(\.|\/)/.test(doc.filePath)
) {
bucket = "HyperSync Network Pages";
} else if (
/\/HyperRPC\//.test(url) &&
/\/supported-networks(\.|\/)/.test(doc.filePath)
) {
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@plugins/plugin-generate-llms.js` around lines 326 - 338, The matcher for
supported networks is too strict: the current checks using
/\/supported-networks\//.test(doc.filePath) (near the bucket assignments for
"HyperIndex Network Pages", "HyperSync Network Pages", "HyperRPC Network Pages")
miss files named like supported-networks.md; update the condition to detect the
substring "supported-networks" in file paths or filenames (for example replace
the regex with a looser check such as
/supported-networks(?:[\/\.]|$)/.test(doc.filePath) or simply
doc.filePath.includes('supported-networks')) so those docs are correctly routed
into the intended buckets.

},
],
preBodyTags: [
`<a href="${LLMS_URL_ABS}" rel="llms-txt" style="position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden;">Envio docs llms.txt — agent-facing documentation index</a>`,
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟠 Major | ⚡ Quick win

Hidden anchor is focusable while visually hidden.

Line 54 adds an offscreen link that can still receive keyboard focus, creating an invisible tab stop on every page. Make it non-focusable and hidden from assistive tech.

Suggested fix
-          `<a href="${LLMS_URL_ABS}" rel="llms-txt" style="position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden;">Envio docs llms.txt — agent-facing documentation index</a>`,
+          `<a href="${LLMS_URL_ABS}" rel="llms-txt" tabindex="-1" aria-hidden="true" style="position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden;">Envio docs llms.txt — agent-facing documentation index</a>`,
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
`<a href="${LLMS_URL_ABS}" rel="llms-txt" style="position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden;">Envio docs llms.txt — agent-facing documentation index</a>`,
`<a href="${LLMS_URL_ABS}" rel="llms-txt" tabindex="-1" aria-hidden="true" style="position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden;">Envio docs llms.txt — agent-facing documentation index</a>`,
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@plugins/plugin-llms-directive.js` at line 54, The offscreen anchor string
that uses LLMS_URL_ABS (the `<a ...>Envio docs llms.txt — agent-facing
documentation index</a>`) is visually hidden but still focusable and exposed to
assistive tech; update the anchor to be non-focusable and hidden from AT by
adding tabindex="-1" and aria-hidden="true" (or role="presentation") while
keeping the existing visual-hide styling so it no longer creates an invisible
tab stop or appears to screen readers.

@@ -1 +1 @@
[{"title":"Envio Developer Update April 2026","permalink":"/blog/envio-developer-update-april-2026","date":"2026-04-28","tags":["product-updates"],"image":"/blog-assets/dev-update-april-2026.png","description":"Envio's April 2026 developer update covering HyperIndex v3 alpha.21 with experimental ClickHouse Sink, the Envio Docs MCP Server, Quickstart with AI guide, Polymarket V2 indexer, Monad traces on HyperSync, Tempo support, and EthCC[9]."},{"title":"How to Track Native ETH Transfers Using Envio's HyperSync","permalink":"/blog/tracking-native-eth-transfers-hypersync","date":"2026-04-24","tags":["tutorials"],"image":"/blog-assets/tracking-native-eth-transfers-hypersync.png","description":"Native ETH transfers don't emit event logs, so tracking them over RPC means slow trace calls. This guide shows how to stream native transfers efficiently using HyperSync's trace filtering with the Node.js client in a Bun project."},{"title":"Using ClickHouse Storage in HyperIndex V3","permalink":"/blog/clickhouse-storage-hyperindex-v3","date":"2026-04-24","tags":["tutorials"],"image":"/blog-assets/clickhouse-storage.png","description":"HyperIndex V3 Alpha adds experimental ClickHouse Storage. Postgres stays primary, entity data mirrors to ClickHouse for analytics workloads on billions of onchain events."},{"title":"Introducing the Envio Docs MCP Server","permalink":"/blog/envio-docs-mcp-server","date":"2026-04-14","tags":["ai"],"image":"/blog-assets/envio-docs-mcp-server.png","description":"Envio's documentation is now available as an MCP server. Connect Claude Code, Cursor, or any MCP-compatible assistant for always up-to-date Envio context."},{"title":"How Envio Indexed 4 Billion Polymarket Events","permalink":"/blog/polymarket-hyperindex-case-study","date":"2026-03-25","tags":["case-studies"],"image":"/blog-assets/polymarket-hyperindex-case-study.png","description":"Envio HyperIndex replaced 8 Polymarket subgraphs with one TypeScript indexer on Polygon, syncing 4 billion events in 6 days. Open source reference included."},{"title":"How to Track Polymarket Trades Using Envio's HyperSync","permalink":"/blog/track-polymarket-trades-hypersync","date":"2026-03-24","tags":["tutorials"],"image":"/blog-assets/polymarket-trades-hypersync.png","description":"Track Polymarket trades in real time using Envio HyperSync. Stream OrderFilled events on Polygon and decode trade data using TypeScript and Bun."},{"title":"Envio Developer Update March 2026","permalink":"/blog/envio-developer-update-march-2026","date":"2026-03-23","tags":["product-updates"],"image":"/blog-assets/dev-update-march-2026.png","description":"Envio Developer Update March 2026: HyperIndex alpha.15-19, agentic indexing workflows, subgraph hosting, ecosystem highlights, and upcoming events."},{"title":"Best Blockchain Indexers in 2026: Real Benchmark Comparison","permalink":"/blog/best-blockchain-indexers-2026","date":"2026-03-20","tags":[],"image":"/blog-assets/best-blockchain-indexers.png","description":"The most accurate, benchmark-backed comparison of the best blockchain indexers in 2026, including the fastest EVM indexer (Envio HyperIndex) and top alternatives to The Graph. Covers Envio, The Graph, Goldsky, SubQuery, Subsquid, Ormi, and Ponder."},{"title":"Agentic Blockchain Indexing with Envio Cloud","permalink":"/blog/agentic-blockchain-indexing-envio-hyperindex","date":"2026-03-20","tags":["ai"],"image":"/blog-assets/agentic-blockchain-indexing-updated.png","description":"Learn how an AI agent can scaffold, configure, and deploy an EVM indexer to Envio Cloud using the envio-cloud CLI, with no manual config required."},{"title":"Envio Developer Update February 2026","permalink":"/blog/envio-developer-update-february-2026","date":"2026-02-25","tags":["product-updates"],"image":"/blog-assets/dev-update-feb-26.png","description":"Envio Developer Update February 2026: HyperIndex v3 alpha.13, 3x faster backfills, MegaETH and Sei indexing, new builder series, and Uniswap v4 alert bots."},{"title":"Envio Developer Update January 2026","permalink":"/blog/envio-developer-update-january-2026","date":"2026-01-28","tags":["product-updates"],"image":"/blog-assets/dev-update-jan-26.png","description":"Envio Developer Update January 2026: HyperIndex V3 alpha with a new testing framework, Vitest support, init improvements, and ecosystem updates."},{"title":"Blockchain Indexer For Application Backends","permalink":"/blog/blockchain-indexer-application-backends","date":"2026-01-28","tags":[],"image":"/blog-assets/blockchain-indexer-backends.png","description":"How blockchain indexers are used in practice to build reliable application backends and how Envio fits into that workflow."},{"title":"How to Migrate Alchemy Subgraphs to Envio","permalink":"/blog/migrating-alchemy-subgraphs-to-envio","date":"","tags":[],"image":"/blog-assets/migrating-alchemy-subgraphs.png","description":"Migrate Alchemy Subgraphs to Envio HyperIndex with a clean four-step flow. Keep your existing schema, avoid a full rebuild, and get fast real-time indexing."},{"title":"Envio Developer Update December 2025","permalink":"/blog/envio-developer-update-december-2025","date":"2025-12-16","tags":["product-updates"],"image":"/blog-assets/dev-update-dec-25.png","description":"What Envio shipped in December 2025: an early look at HyperIndex v3.0.0, Solana experimentation, Sonic support, and a USDT0 indexing example."},{"title":"Envio Developer Update November 2025","permalink":"/blog/envio-developer-update-november-2025","date":"2025-11-26","tags":["product-updates"],"image":"/blog-assets/dev-update-nov-25.png","description":"What Envio shipped in November 2025: v2.32.0, Monad Mainnet indexing, Alchemy Subgraphs migration, HyperSync Sonic results, and new Rootstock tutorials."},{"title":"MetaMask Smart Accounts x Monad Hackathon Winners","permalink":"/blog/metamask-smart-accounts-hackathon-winners","date":"2025-11-13","tags":["announcements"],"image":"/blog-assets/metamask-hackathon-2025.png","description":"Standout projects from the MetaMask Smart Accounts x Monad Dev Cook Off using MetaMask SDKs, Monad, and Envio for real-time onchain indexing."},{"title":"Encode London 2025: Envio Hackathon Winners","permalink":"/blog/encode-london-2025","date":"2025-11-12","tags":["announcements"],"image":"/blog-assets/encode-london-2025.png","description":"Discover the Encode London 2025 hackathon winners who built real-time Web3 applications using Envio's blockchain indexing tools."},{"title":"Envio Developer Update October 2025","permalink":"/blog/envio-developer-update-october-2025","date":"2025-10-28","tags":["product-updates"],"image":"/blog-assets/dev-update-oct-25.png","description":"What Envio shipped in October 2025: v2.31.0 with rollback improvements, Scaffold ETH 2 extension, and highlights from ETHOnline and Encode London."},{"title":"Envio Developer Update September 2025","permalink":"/blog/envio-developer-update-september-2025","date":"2025-09-30","tags":["product-updates"],"image":"/blog-assets/sep-update-2025-0.png","description":"Catch the highlights from Envio's September 2025 developer update including product improvements, new network integrations, and community builder milestones."},{"title":"Envio Developer Update August 2025","permalink":"/blog/envio-developer-update-august-2025","date":"2025-08-29","tags":["product-updates"],"image":"/blog-assets/dev-update-august-2025.png","description":"See what Envio shipped in August 2025 including key product updates, internal hackathon projects, new integrations, and expanded network support for builders."},{"title":"Envio Developer Update July 2025","permalink":"/blog/envio-developer-update-july-2025","date":"2025-07-30","tags":["product-updates"],"image":"/blog-assets/dev-update-july-2025.png","description":"What Envio shipped in July 2025: built-in cache for effect calls, one-click indexer generator, internal hackathon highlights, and Base ecosystem integrations."},{"title":"Envio Developer Update June 2025","permalink":"/blog/envio-developer-update-june-2025","date":"2025-06-24","tags":["product-updates"],"image":"/blog-assets/dev-update-june-2025.png","description":"What Envio shipped in June 2025: new indexer tools, upgraded data pipelines, and expanded network support for multichain development."},{"title":"Building Visualizers & Dashboards on Monad using Envio","permalink":"/blog/how-to-build-visualizers-and-dashboards-on-monad-using-envio","date":"2025-06-24","tags":[],"image":"/blog-assets/building-visualizers-and-dash-monad.png","description":"Learn how to build visual dashboards on Monad using Envio to stream real-time and historical data and create interactive analytics experiences with ease."},{"title":"How to Index MegaEth Data Using Envio","permalink":"/blog/how-to-index-megaeth-data-using-envio","date":"2025-06-17","tags":[],"image":"/blog-assets/indexing-megaeth-data.png","description":"Learn how to index data on MegaEth using Envio with a step-by-step guide to project setup, contract mapping, and real-time onchain data querying."},{"title":"How to Index Monad Data Using Envio","permalink":"/blog/how-to-index-monad-data-using-envio","date":"2025-06-12","tags":[],"image":"/blog-assets/indexing-monad-data.png","description":"Learn how to efficiently index data on Monad using Envio from setting up your project to mapping contracts and querying onchain events in real-time."},{"title":"Envio Developer Update May 2025","permalink":"/blog/envio-developer-update-may-2025","date":"2025-05-29","tags":["product-updates"],"image":"/blog-assets/dev-update-may-2025.png","description":"What Envio shipped in May 2025: major version releases, CLI improvements, indexer tooling updates, integrations, and DappCon 2025 sponsorship."},{"title":"Announcing the Monad Envio Hackathon Winners","permalink":"/blog/announcing-the-monad-envio-hackathon-winners","date":"2025-05-16","tags":["announcements"],"image":"/blog-assets/monad-hackathon-winners-2025.png","description":"Winning projects from the Monad Envio Hackathon where developers built high-performance apps and showcased real-time blockchain data indexing on Monad."},{"title":"Envio Developer Update April 2025","permalink":"/blog/envio-developer-update-april-2025","date":"2025-04-25","tags":["product-updates"],"image":"/blog-assets/dev-update-april-2025.png","description":"What Envio shipped in April 2025: HyperIndex v2.16 and v2.17, topic filters by contract address, a new dev console, and expanded Monad network support."},{"title":"Exploring Real-time Oracle Behavior and Push Based Feeds","permalink":"/blog/oracle-wars","date":"2025-04-15","tags":[],"image":"/blog-assets/oracle-wars-1.png","description":"Learn how Oracle Wars uses Envio's HyperIndex to visualise how different oracle providers behave in real-time so you can design more reliable onchain systems."},{"title":"Envio Developer Update March 2025","permalink":"/blog/envio-developer-update-march-2025","date":"2025-03-31","tags":["product-updates"],"image":"/blog-assets/envio-dev-update-march-2025.png","description":"What Envio shipped in March 2025: HyperIndex v2.15 with RPC failover, the LogTui chain scan tool, and integrations with XDC Network, Monad, and Chiliz."},{"title":"Envio Now Supports 70+ Blockchains","permalink":"/blog/envio-hypersync-supports-70-networks","date":"2025-03-26","tags":[],"image":"/blog-assets/envio-supports-70-networks.png","description":"Learn how Envio's HyperSync supports over 70 blockchain networks delivering real-time and historical onchain data with unmatched speed and reliability."},{"title":"What is Multichain Indexing?","permalink":"/blog/what-is-multi-chain-indexing","date":"2025-03-17","tags":[],"image":"/blog-assets/what-is-multi-chain-indexing.png","description":"Learn how Envio enables multichain indexing to unify data from multiple blockchains, letting developers query assets, events, and contracts across networks."},{"title":"Envio Developer Update February 2025","permalink":"/blog/envio-developer-update-february-2025","date":"2025-02-27","tags":["product-updates"],"image":"/blog-assets/envio-dev-update-feb-2025.png","description":"What Envio shipped in February 2025: new HyperSync network support, product improvements, community highlights, and upcoming builder initiatives."},{"title":"Envio Developer Update January 2025","permalink":"/blog/envio-developer-update-january-2025","date":"2025-01-30","tags":["product-updates"],"image":"/blog-assets/envio-developer-community-january-2025.png","description":"What Envio shipped in January 2025: new network integrations, feature releases, and tooling for multichain indexing."},{"title":"What is a Blockchain Indexer?","permalink":"/blog/what-is-a-blockchain-indexer","date":"2025-01-21","tags":[],"image":"/blog-assets/blockchain-indexer.png","description":"Learn how efficient blockchain indexers like Envio simplify data access for developers by organising and querying onchain data in real-time."},{"title":"Envio Developer Update December 2024","permalink":"/blog/envio-developer-update-december-2024","date":"2024-12-24","tags":[],"image":"/blog-assets/envio-developer-community-december-2024.png","description":"What Envio shipped in December 2024: HyperSync milestone release, Blocksquare DeFi integration, new tutorials, and community highlights."},{"title":"zkPass: Multichain ZKP Identity Verification Powered by Envio","permalink":"/blog/zkpass-shaping-future-of-data-privacy","date":"2024-12-18","tags":["case-studies"],"image":"/blog-assets/zkpass-casestudy.png","description":"How zkPass uses zero knowledge proofs with Envio to verify identity and transactions across 8 EVM networks while keeping user data private."},{"title":"Tokenizing Real World Assets: Real Estate on the Blockchain","permalink":"/blog/tokenizing-real-world-assets","date":"2024-12-09","tags":["case-studies"],"image":"/blog-assets/tokenizing-rwa.png","description":"Discover how tokenized real world assets enable fractional real estate investment with lower barriers, global access, and transparent onchain ownership."},{"title":"Envio Developer Update November 2024","permalink":"/blog/envio-developer-update-november-2024","date":"2024-11-28","tags":[],"image":"/blog-assets/envio-developer-community-november-2024.png","description":"Catch the latest from Envio in November 2024 including platform enhancements, key releases, and community milestones advancing our blockchain indexing solution."},{"title":"Indexing and Reorgs","permalink":"/blog/indexing-and-reorgs","date":"2024-11-26","tags":[],"image":"/blog-assets/indexing-and-reorgs.png","description":"Learn how Envio handles blockchain reorgs to maintain data accuracy and consistency when indexing onchain events across multiple networks."},{"title":"Optimizing Blockchain Indexers on AWS","permalink":"/blog/cut-aws-cloud-costs","date":"2024-11-13","tags":[],"image":"/blog-assets/cut-aws-cloud-costs1.png","description":"Learn how to optimize your blockchain indexer on AWS using smarter infrastructure planning and scaling techniques to cut costs and improve performance."},{"title":"Introducing Envio Cloud: 10x Faster Indexer Deployments","permalink":"/blog/hosted-service-v2","date":"2024-11-08","tags":[],"image":"/blog-assets/hosted-service-v2.png","description":"Envio Cloud launched November 2024 with 10x faster build and deployment speeds, improved performance, and zero infrastructure overhead for blockchain indexers."},{"title":"Envio Developer Update October 2024","permalink":"/blog/envio-developer-update-october-2024","date":"2024-10-29","tags":[],"image":"/blog-assets/envio-developer-community-oct-2024.png","description":"What Envio shipped in October 2024: new releases, platform enhancements, and community integrations across the blockchain indexing stack."},{"title":"EthOnline 2024 Envio Hackathon Winners","permalink":"/blog/ethonline-envio-hackathon-winners","date":"2024-10-15","tags":[],"image":"/blog-assets/ethonline-hackathon-winners.png","description":"The winners of EthOnline 2024 where Envio supported 40+ project submissions and $5,000 in bounties for builders shipping onchain indexing solutions."},{"title":"How Bridgg Unified 12 OP Superchain Networks into One API","permalink":"/blog/case-study-bridgg-op-superchain","date":"2024-10-09","tags":["case-studies"],"image":"/blog-assets/case-study-bridgg-op-superchain.png","description":"How Bridgg uses Envio to aggregate deposit and withdrawal data across 12 OP Superchain networks into a single API, indexing 11 million events in one deployment."},{"title":"Envio Developer Update September 2024","permalink":"/blog/envio-developer-update-september-2024","date":"2024-10-02","tags":[],"image":"/blog-assets/envio-developer-community-sep-2024.png","description":"What Envio shipped in September 2024: v2.3.0 with Wildcard Indexing and IPFS integration, TOKEN2049 and EthCapeTown appearances, and new HyperSync networks."},{"title":"How Limitless Built a Real-Time Prediction Market Feed on Base","permalink":"/blog/case-study-limitless-prediction-market","date":"2024-09-27","tags":["case-studies"],"image":"/blog-assets/case-study-limitless.png","description":"How Limitless Exchange uses Envio to power a daily prediction market on Base with real-time onchain data, custom GraphQL APIs, and a seamless transaction feed."},{"title":"Building ChainDensity with HyperSync","permalink":"/blog/building-chaindensity","date":"2024-08-19","tags":[],"image":"/blog-assets/density1.png","description":"How Envio's HyperSync powers ChainDensity to visualize blockchain event and transaction density across 70+ chains, processing millions of events in seconds."},{"title":"How Sablier Streams Tokens Across 27+ Chains with One Envio Indexer","permalink":"/blog/case-study-sablier","date":"2024-08-13","tags":["case-studies"],"image":"/blog-assets/case-study-sablier.png","description":"How Sablier replaced 12 separate indexer deployments with one Envio multichain indexer, now spanning 27 chains, cutting costs and accelerating feature delivery."},{"title":"Fast Data Indexing on Fuel using Envio","permalink":"/blog/fast-data-indexing-on-fuel-using-envio","date":"2024-07-18","tags":[],"image":"/blog-assets/fuel-envio.png","description":"Learn how Envio brings fast data indexing to Fuel Network so developers can query real-time and historical onchain data with speed and simplicity."},{"title":"How GBlast Eliminated Data Latency in Their GambleFi Platform","permalink":"/blog/case-study-gblast","date":"2024-07-17","tags":[],"image":"/blog-assets/case-study-gblast.png","description":"How GBlast integrated Envio to eliminate real-time data latency, power their points system, and deliver a responsive GambleFi experience on Blast."},{"title":"Indexing Real-Time Data on LUKSO Using Envio","permalink":"/blog/envio-data-indexing-supports-developers-building-on-lukso","date":"2024-02-20","tags":[],"image":"/blog-assets/envio-partner-lukso.png","description":"Learn how Envio's blockchain indexer helps developers on LUKSO access real-time and historical onchain data with faster queries and deeper insights."},{"title":"How Envio Simplifies Data Retrieval for Multichain dApps","permalink":"/blog/how-envio-simplifies-data-retrieval-for-multi-chain-dapps","date":"2023-11-15","tags":[],"image":"/blog-assets/envio-simplifies-data-retrieval-for-multi-chain-dapps.png","description":"How multichain indexing works with Envio HyperIndex, with a practical walkthrough of config, schema, and event handlers for indexing across multiple EVM chains."},{"title":"Dedicated Hosting for Blockchain Indexers","permalink":"/blog/powers-of-dedicated-hosting-for-web3-dapps","date":"2023-11-09","tags":[],"image":"/blog-assets/envio-dedicated-hosting.png","description":"What dedicated hosting means for blockchain indexer developers, how Envio Cloud handles infrastructure, and why managed hosting reduces development overhead."},{"title":"Benchmarking Blockchain Indexer Sync Speeds","permalink":"/blog/indexer-benchmarking-results","date":"2023-10-24","tags":[],"image":"/blog-assets/envio-benchmarking-blockchain-indexing-sync-speeds.png","description":"Benchmarking results comparing Envio against Subsquid, The Graph, Ponder, and Substreams across 5 million events on the Uniswap V3 ETH-USDC pool."},{"title":"How to Become a Blockchain Developer","permalink":"/blog/how-to-become-a-blockchain-dapp-developer","date":"2023-10-04","tags":[],"image":"/blog-assets/how-to-become-a-blockchain-developer.png","description":"A practical guide to blockchain dApp development covering smart contracts, frontend setup, wallet integration, and onchain data indexing with Envio HyperIndex."},{"title":"Blockchain Indexing Challenges and How to Solve Them","permalink":"/blog/common-challenges-in-blockchain-indexing","date":"2023-08-31","tags":[],"image":"/blog-assets/blockchain-indexing-challenges.png","description":"The most common blockchain indexing challenges explained: slow syncs, chain reorgs, multichain complexity, and how Envio HyperIndex solves each one."},{"title":"How to Query Blockchain Data: 3 Methods Compared","permalink":"/blog/methods-to-query-blockchain-data-and-their-trade-offs","date":"2023-08-08","tags":[],"image":"/blog-assets/how-to-query-blockchain-data.png","description":"How to query blockchain data: a practical comparison of self-hosted nodes, RPC providers, and indexers with honest trade-offs on speed, cost, and flexibility."}] No newline at end of file
[{"title":"Production Indexer Reliability with HyperIndex","permalink":"/blog/production-indexer-reliability-hyperindex","date":"2026-05-14","tags":[],"image":"/blog-assets/production-indexer-reliability-hyperindex.png","description":"Production indexer reliability with HyperIndex: framework reorg rollback, restart-resistant operation, HyperSync data validation, multi data-source recovery, stable Prometheus metrics."},{"title":"AI-Assisted Subgraph Migration to HyperIndex with Claude","permalink":"/blog/ai-subgraph-migration-hyperindex-claude","date":"2026-05-14","tags":["ai"],"image":"/blog-assets/ai-subgraph-migration-hyperindex-claude.png","description":"Migrate a subgraph from The Graph to Envio HyperIndex with Claude doing the AssemblyScript-to-TypeScript rewrite. Real config, real handlers, real repo."},{"title":"Build an AI-Powered App with HyperIndex and Claude","permalink":"/blog/ai-onchain-app-hyperindex-claude","date":"2026-05-14","tags":["ai"],"image":"/blog-assets/ai-onchain-app-hyperindex-claude.png","description":"End-to-end tutorial: scaffold, deploy, and run a multichain HyperIndex indexer with Claude. Real config, real handlers, real CLI, real GraphQL."},{"title":"Why AI Agents Acting Onchain Need an Indexer","permalink":"/blog/ai-agents-acting-onchain-indexer","date":"2026-05-14","tags":["ai"],"image":"/blog-assets/ai-agents-acting-onchain-indexer.png","description":"AI agents that act onchain need reorg-safe, queryable data they can act on. HyperIndex delivers it. Real MCP server, real Claude skills, 400k events in 20 seconds."},{"title":"Privacy in Public: A Case Study on Privacy Pools","permalink":"/blog/privacy-in-public-case-study","date":"2026-05-07","tags":["case-studies"],"image":"/blog-assets/privacy-pools-case-study.png","description":"What an Envio HyperIndex multichain indexer plus a thin Uniswap V4 price feed reveal about Privacy Pools (21 pools, 4 chains, ~5,200 deposits, $5.78M TVL): a working privacy primitive whose on-chain footprint shows the cryptographic floor holding."},{"title":"How Revert Finance Fixed 2 Years of Unsynced PancakeSwap V3 Data with Envio","permalink":"/blog/revert-finance-pancakeswap-bnb-hyperindex","date":"2026-05-06","tags":["case-studies"],"image":"/blog-assets/revert-hyperindex-case-study.png","description":"Revert Finance's PancakeSwap V3 subgraph on The Graph had been stuck at 70% sync on BNB Smart Chain for over 2 years. Envio HyperIndex synced it to 100% in 10 days, processing 1.7 billion events."},{"title":"What is HyperSync?","permalink":"/blog/what-is-hypersync","date":"2026-04-30","tags":[],"image":"/blog-assets/what-is-hypersync.png","description":"HyperSync is Envio's high-performance blockchain data layer, up to 2000x faster than RPC across dozens of supported chains. Learn what it is, how it works, and how to query it."},{"title":"Envio Developer Update April 2026","permalink":"/blog/envio-developer-update-april-2026","date":"2026-04-28","tags":["product-updates"],"image":"/blog-assets/dev-update-april-2026.png","description":"Envio's April 2026 developer update covering HyperIndex v3 alpha.21 with experimental ClickHouse Sink, the Envio Docs MCP Server, Quickstart with AI guide, Polymarket V2 indexer, Monad traces on HyperSync, Tempo support, and EthCC[9]."},{"title":"How to Track Native ETH Transfers Using Envio's HyperSync","permalink":"/blog/tracking-native-eth-transfers-hypersync","date":"2026-04-24","tags":["tutorials"],"image":"/blog-assets/tracking-native-eth-transfers-hypersync.png","description":"Native ETH transfers don't emit event logs, so tracking them over RPC means slow trace calls. This guide shows how to stream native transfers efficiently using HyperSync's trace filtering with the Node.js client in a Bun project."},{"title":"Using ClickHouse Storage in HyperIndex V3","permalink":"/blog/clickhouse-storage-hyperindex-v3","date":"2026-04-24","tags":["tutorials"],"image":"/blog-assets/clickhouse-storage.png","description":"HyperIndex V3 Alpha adds experimental ClickHouse Storage. Postgres stays primary, entity data mirrors to ClickHouse for analytics workloads on billions of onchain events."},{"title":"Introducing the Envio Docs MCP Server","permalink":"/blog/envio-docs-mcp-server","date":"2026-04-14","tags":["ai"],"image":"/blog-assets/envio-docs-mcp-server.png","description":"Envio's documentation is now available as an MCP server. Connect Claude Code, Cursor, or any MCP-compatible assistant for always up-to-date Envio context."},{"title":"How Envio Indexed 4 Billion Polymarket Events","permalink":"/blog/polymarket-hyperindex-case-study","date":"2026-03-25","tags":["case-studies"],"image":"/blog-assets/polymarket-hyperindex-case-study.png","description":"Envio HyperIndex replaced 8 Polymarket subgraphs with one TypeScript indexer on Polygon, syncing 4 billion events in 6 days. Open source reference included."},{"title":"How to Track Polymarket Trades Using Envio's HyperSync","permalink":"/blog/track-polymarket-trades-hypersync","date":"2026-03-24","tags":["tutorials"],"image":"/blog-assets/polymarket-trades-hypersync.png","description":"Track Polymarket trades in real time using Envio HyperSync. Stream OrderFilled events on Polygon and decode trade data using TypeScript and Bun."},{"title":"Envio Developer Update March 2026","permalink":"/blog/envio-developer-update-march-2026","date":"2026-03-23","tags":["product-updates"],"image":"/blog-assets/dev-update-march-2026.png","description":"Envio Developer Update March 2026: HyperIndex alpha.15-19, agentic indexing workflows, subgraph hosting, ecosystem highlights, and upcoming events."},{"title":"Best Blockchain Indexers in 2026: Real Benchmark Comparison","permalink":"/blog/best-blockchain-indexers-2026","date":"2026-03-20","tags":[],"image":"/blog-assets/best-blockchain-indexers.png","description":"The most accurate, benchmark-backed comparison of the best blockchain indexers in 2026, including the fastest EVM indexer (Envio HyperIndex) and top alternatives to The Graph. Covers Envio, The Graph, Goldsky, SubQuery, Subsquid, Ormi, and Ponder."},{"title":"Agentic Blockchain Indexing with Envio Cloud","permalink":"/blog/agentic-blockchain-indexing-envio-hyperindex","date":"2026-03-20","tags":["ai"],"image":"/blog-assets/agentic-blockchain-indexing-updated.png","description":"Learn how an AI agent can scaffold, configure, and deploy an EVM indexer to Envio Cloud using the envio-cloud CLI, with no manual config required."},{"title":"Envio Developer Update February 2026","permalink":"/blog/envio-developer-update-february-2026","date":"2026-02-25","tags":["product-updates"],"image":"/blog-assets/dev-update-feb-26.png","description":"Envio Developer Update February 2026: HyperIndex v3 alpha.13, 3x faster backfills, MegaETH and Sei indexing, new builder series, and Uniswap v4 alert bots."},{"title":"Envio Developer Update January 2026","permalink":"/blog/envio-developer-update-january-2026","date":"2026-01-28","tags":["product-updates"],"image":"/blog-assets/dev-update-jan-26.png","description":"Envio Developer Update January 2026: HyperIndex V3 alpha with a new testing framework, Vitest support, init improvements, and ecosystem updates."},{"title":"Blockchain Indexer For Application Backends","permalink":"/blog/blockchain-indexer-application-backends","date":"2026-01-28","tags":[],"image":"/blog-assets/blockchain-indexer-backends.png","description":"How blockchain indexers are used in practice to build reliable application backends and how Envio fits into that workflow."},{"title":"How to Migrate Alchemy Subgraphs to Envio","permalink":"/blog/migrating-alchemy-subgraphs-to-envio","date":"","tags":[],"image":"/blog-assets/migrating-alchemy-subgraphs.png","description":"Migrate Alchemy Subgraphs to Envio HyperIndex with a clean four-step flow. Keep your existing schema, avoid a full rebuild, and get fast real-time indexing."},{"title":"Envio Developer Update December 2025","permalink":"/blog/envio-developer-update-december-2025","date":"2025-12-16","tags":["product-updates"],"image":"/blog-assets/dev-update-dec-25.png","description":"What Envio shipped in December 2025: an early look at HyperIndex v3.0.0, Solana experimentation, Sonic support, and a USDT0 indexing example."},{"title":"Envio Developer Update November 2025","permalink":"/blog/envio-developer-update-november-2025","date":"2025-11-26","tags":["product-updates"],"image":"/blog-assets/dev-update-nov-25.png","description":"What Envio shipped in November 2025: v2.32.0, Monad Mainnet indexing, Alchemy Subgraphs migration, HyperSync Sonic results, and new Rootstock tutorials."},{"title":"MetaMask Smart Accounts x Monad Hackathon Winners","permalink":"/blog/metamask-smart-accounts-hackathon-winners","date":"2025-11-13","tags":["announcements"],"image":"/blog-assets/metamask-hackathon-2025.png","description":"Standout projects from the MetaMask Smart Accounts x Monad Dev Cook Off using MetaMask SDKs, Monad, and Envio for real-time onchain indexing."},{"title":"Encode London 2025: Envio Hackathon Winners","permalink":"/blog/encode-london-2025","date":"2025-11-12","tags":["announcements"],"image":"/blog-assets/encode-london-2025.png","description":"Discover the Encode London 2025 hackathon winners who built real-time Web3 applications using Envio's blockchain indexing tools."},{"title":"Envio Developer Update October 2025","permalink":"/blog/envio-developer-update-october-2025","date":"2025-10-28","tags":["product-updates"],"image":"/blog-assets/dev-update-oct-25.png","description":"What Envio shipped in October 2025: v2.31.0 with rollback improvements, Scaffold ETH 2 extension, and highlights from ETHOnline and Encode London."},{"title":"Envio Developer Update September 2025","permalink":"/blog/envio-developer-update-september-2025","date":"2025-09-30","tags":["product-updates"],"image":"/blog-assets/sep-update-2025-0.png","description":"Catch the highlights from Envio's September 2025 developer update including product improvements, new network integrations, and community builder milestones."},{"title":"Envio Developer Update August 2025","permalink":"/blog/envio-developer-update-august-2025","date":"2025-08-29","tags":["product-updates"],"image":"/blog-assets/dev-update-august-2025.png","description":"See what Envio shipped in August 2025 including key product updates, internal hackathon projects, new integrations, and expanded network support for builders."},{"title":"Envio Developer Update July 2025","permalink":"/blog/envio-developer-update-july-2025","date":"2025-07-30","tags":["product-updates"],"image":"/blog-assets/dev-update-july-2025.png","description":"What Envio shipped in July 2025: built-in cache for effect calls, one-click indexer generator, internal hackathon highlights, and Base ecosystem integrations."},{"title":"Envio Developer Update June 2025","permalink":"/blog/envio-developer-update-june-2025","date":"2025-06-24","tags":["product-updates"],"image":"/blog-assets/dev-update-june-2025.png","description":"What Envio shipped in June 2025: new indexer tools, upgraded data pipelines, and expanded network support for multichain development."},{"title":"Building Visualizers & Dashboards on Monad using Envio","permalink":"/blog/how-to-build-visualizers-and-dashboards-on-monad-using-envio","date":"2025-06-24","tags":[],"image":"/blog-assets/building-visualizers-and-dash-monad.png","description":"Learn how to build visual dashboards on Monad using Envio to stream real-time and historical data and create interactive analytics experiences with ease."},{"title":"How to Index MegaEth Data Using Envio","permalink":"/blog/how-to-index-megaeth-data-using-envio","date":"2025-06-17","tags":[],"image":"/blog-assets/indexing-megaeth-data.png","description":"Learn how to index data on MegaEth using Envio with a step-by-step guide to project setup, contract mapping, and real-time onchain data querying."},{"title":"How to Index Monad Data Using Envio","permalink":"/blog/how-to-index-monad-data-using-envio","date":"2025-06-12","tags":[],"image":"/blog-assets/indexing-monad-data.png","description":"Learn how to efficiently index data on Monad using Envio from setting up your project to mapping contracts and querying onchain events in real-time."},{"title":"Envio Developer Update May 2025","permalink":"/blog/envio-developer-update-may-2025","date":"2025-05-29","tags":["product-updates"],"image":"/blog-assets/dev-update-may-2025.png","description":"What Envio shipped in May 2025: major version releases, CLI improvements, indexer tooling updates, integrations, and DappCon 2025 sponsorship."},{"title":"Announcing the Monad Envio Hackathon Winners","permalink":"/blog/announcing-the-monad-envio-hackathon-winners","date":"2025-05-16","tags":["announcements"],"image":"/blog-assets/monad-hackathon-winners-2025.png","description":"Winning projects from the Monad Envio Hackathon where developers built high-performance apps and showcased real-time blockchain data indexing on Monad."},{"title":"Envio Developer Update April 2025","permalink":"/blog/envio-developer-update-april-2025","date":"2025-04-25","tags":["product-updates"],"image":"/blog-assets/dev-update-april-2025.png","description":"What Envio shipped in April 2025: HyperIndex v2.16 and v2.17, topic filters by contract address, a new dev console, and expanded Monad network support."},{"title":"Exploring Real-time Oracle Behavior and Push Based Feeds","permalink":"/blog/oracle-wars","date":"2025-04-15","tags":[],"image":"/blog-assets/oracle-wars-1.png","description":"Learn how Oracle Wars uses Envio's HyperIndex to visualise how different oracle providers behave in real-time so you can design more reliable onchain systems."},{"title":"Envio Developer Update March 2025","permalink":"/blog/envio-developer-update-march-2025","date":"2025-03-31","tags":["product-updates"],"image":"/blog-assets/envio-dev-update-march-2025.png","description":"What Envio shipped in March 2025: HyperIndex v2.15 with RPC failover, the LogTui chain scan tool, and integrations with XDC Network, Monad, and Chiliz."},{"title":"Envio Now Supports 70+ Blockchains","permalink":"/blog/envio-hypersync-supports-70-networks","date":"2025-03-26","tags":[],"image":"/blog-assets/envio-supports-70-networks.png","description":"Learn how Envio's HyperSync supports over 70 blockchain networks delivering real-time and historical onchain data with unmatched speed and reliability."},{"title":"What is Multichain Indexing?","permalink":"/blog/what-is-multi-chain-indexing","date":"2025-03-17","tags":[],"image":"/blog-assets/what-is-multi-chain-indexing.png","description":"Learn how Envio enables multichain indexing to unify data from multiple blockchains, letting developers query assets, events, and contracts across networks."},{"title":"Envio Developer Update February 2025","permalink":"/blog/envio-developer-update-february-2025","date":"2025-02-27","tags":["product-updates"],"image":"/blog-assets/envio-dev-update-feb-2025.png","description":"What Envio shipped in February 2025: new HyperSync network support, product improvements, community highlights, and upcoming builder initiatives."},{"title":"Envio Developer Update January 2025","permalink":"/blog/envio-developer-update-january-2025","date":"2025-01-30","tags":["product-updates"],"image":"/blog-assets/envio-developer-community-january-2025.png","description":"What Envio shipped in January 2025: new network integrations, feature releases, and tooling for multichain indexing."},{"title":"What is a Blockchain Indexer?","permalink":"/blog/what-is-a-blockchain-indexer","date":"2025-01-21","tags":[],"image":"/blog-assets/blockchain-indexer.png","description":"Learn how efficient blockchain indexers like Envio simplify data access for developers by organising and querying onchain data in real-time."},{"title":"Envio Developer Update December 2024","permalink":"/blog/envio-developer-update-december-2024","date":"2024-12-24","tags":[],"image":"/blog-assets/envio-developer-community-december-2024.png","description":"What Envio shipped in December 2024: HyperSync milestone release, Blocksquare DeFi integration, new tutorials, and community highlights."},{"title":"zkPass: Multichain ZKP Identity Verification Powered by Envio","permalink":"/blog/zkpass-shaping-future-of-data-privacy","date":"2024-12-18","tags":["case-studies"],"image":"/blog-assets/zkpass-casestudy.png","description":"How zkPass uses zero knowledge proofs with Envio to verify identity and transactions across 8 EVM networks while keeping user data private."},{"title":"Tokenizing Real World Assets: Real Estate on the Blockchain","permalink":"/blog/tokenizing-real-world-assets","date":"2024-12-09","tags":["case-studies"],"image":"/blog-assets/tokenizing-rwa.png","description":"Discover how tokenized real world assets enable fractional real estate investment with lower barriers, global access, and transparent onchain ownership."},{"title":"Envio Developer Update November 2024","permalink":"/blog/envio-developer-update-november-2024","date":"2024-11-28","tags":[],"image":"/blog-assets/envio-developer-community-november-2024.png","description":"Catch the latest from Envio in November 2024 including platform enhancements, key releases, and community milestones advancing our blockchain indexing solution."},{"title":"Indexing and Reorgs","permalink":"/blog/indexing-and-reorgs","date":"2024-11-26","tags":[],"image":"/blog-assets/indexing-and-reorgs.png","description":"Learn how Envio handles blockchain reorgs to maintain data accuracy and consistency when indexing onchain events across multiple networks."},{"title":"Optimizing Blockchain Indexers on AWS","permalink":"/blog/cut-aws-cloud-costs","date":"2024-11-13","tags":[],"image":"/blog-assets/cut-aws-cloud-costs1.png","description":"Learn how to optimize your blockchain indexer on AWS using smarter infrastructure planning and scaling techniques to cut costs and improve performance."},{"title":"Introducing Envio Cloud: 10x Faster Indexer Deployments","permalink":"/blog/hosted-service-v2","date":"2024-11-08","tags":[],"image":"/blog-assets/hosted-service-v2.png","description":"Envio Cloud launched November 2024 with 10x faster build and deployment speeds, improved performance, and zero infrastructure overhead for blockchain indexers."},{"title":"Envio Developer Update October 2024","permalink":"/blog/envio-developer-update-october-2024","date":"2024-10-29","tags":[],"image":"/blog-assets/envio-developer-community-oct-2024.png","description":"What Envio shipped in October 2024: new releases, platform enhancements, and community integrations across the blockchain indexing stack."},{"title":"EthOnline 2024 Envio Hackathon Winners","permalink":"/blog/ethonline-envio-hackathon-winners","date":"2024-10-15","tags":[],"image":"/blog-assets/ethonline-hackathon-winners.png","description":"The winners of EthOnline 2024 where Envio supported 40+ project submissions and $5,000 in bounties for builders shipping onchain indexing solutions."},{"title":"How Bridgg Unified 12 OP Superchain Networks into One API","permalink":"/blog/case-study-bridgg-op-superchain","date":"2024-10-09","tags":["case-studies"],"image":"/blog-assets/case-study-bridgg-op-superchain.png","description":"How Bridgg uses Envio to aggregate deposit and withdrawal data across 12 OP Superchain networks into a single API, indexing 11 million events in one deployment."},{"title":"Envio Developer Update September 2024","permalink":"/blog/envio-developer-update-september-2024","date":"2024-10-02","tags":[],"image":"/blog-assets/envio-developer-community-sep-2024.png","description":"What Envio shipped in September 2024: v2.3.0 with Wildcard Indexing and IPFS integration, TOKEN2049 and EthCapeTown appearances, and new HyperSync networks."},{"title":"How Limitless Built a Real-Time Prediction Market Feed on Base","permalink":"/blog/case-study-limitless-prediction-market","date":"2024-09-27","tags":["case-studies"],"image":"/blog-assets/case-study-limitless.png","description":"How Limitless Exchange uses Envio to power a daily prediction market on Base with real-time onchain data, custom GraphQL APIs, and a seamless transaction feed."},{"title":"Building ChainDensity with HyperSync","permalink":"/blog/building-chaindensity","date":"2024-08-19","tags":[],"image":"/blog-assets/density1.png","description":"How Envio's HyperSync powers ChainDensity to visualize blockchain event and transaction density across 70+ chains, processing millions of events in seconds."},{"title":"How Sablier Streams Tokens Across 27+ Chains with One Envio Indexer","permalink":"/blog/case-study-sablier","date":"2024-08-13","tags":["case-studies"],"image":"/blog-assets/case-study-sablier.png","description":"How Sablier replaced 12 separate indexer deployments with one Envio multichain indexer, now spanning 27 chains, cutting costs and accelerating feature delivery."},{"title":"Fast Data Indexing on Fuel using Envio","permalink":"/blog/fast-data-indexing-on-fuel-using-envio","date":"2024-07-18","tags":[],"image":"/blog-assets/fuel-envio.png","description":"Learn how Envio brings fast data indexing to Fuel Network so developers can query real-time and historical onchain data with speed and simplicity."},{"title":"How GBlast Eliminated Data Latency in Their GambleFi Platform","permalink":"/blog/case-study-gblast","date":"2024-07-17","tags":[],"image":"/blog-assets/case-study-gblast.png","description":"How GBlast integrated Envio to eliminate real-time data latency, power their points system, and deliver a responsive GambleFi experience on Blast."},{"title":"Indexing Real-Time Data on LUKSO Using Envio","permalink":"/blog/envio-data-indexing-supports-developers-building-on-lukso","date":"2024-02-20","tags":[],"image":"/blog-assets/envio-partner-lukso.png","description":"Learn how Envio's blockchain indexer helps developers on LUKSO access real-time and historical onchain data with faster queries and deeper insights."},{"title":"How Envio Simplifies Data Retrieval for Multichain dApps","permalink":"/blog/how-envio-simplifies-data-retrieval-for-multi-chain-dapps","date":"2023-11-15","tags":[],"image":"/blog-assets/envio-simplifies-data-retrieval-for-multi-chain-dapps.png","description":"How multichain indexing works with Envio HyperIndex, with a practical walkthrough of config, schema, and event handlers for indexing across multiple EVM chains."},{"title":"Dedicated Hosting for Blockchain Indexers","permalink":"/blog/powers-of-dedicated-hosting-for-web3-dapps","date":"2023-11-09","tags":[],"image":"/blog-assets/envio-dedicated-hosting.png","description":"What dedicated hosting means for blockchain indexer developers, how Envio Cloud handles infrastructure, and why managed hosting reduces development overhead."},{"title":"Benchmarking Blockchain Indexer Sync Speeds","permalink":"/blog/indexer-benchmarking-results","date":"2023-10-24","tags":[],"image":"/blog-assets/envio-benchmarking-blockchain-indexing-sync-speeds.png","description":"Benchmarking results comparing Envio against Subsquid, The Graph, Ponder, and Substreams across 5 million events on the Uniswap V3 ETH-USDC pool."},{"title":"How to Become a Blockchain Developer","permalink":"/blog/how-to-become-a-blockchain-dapp-developer","date":"2023-10-04","tags":[],"image":"/blog-assets/how-to-become-a-blockchain-developer.png","description":"A practical guide to blockchain dApp development covering smart contracts, frontend setup, wallet integration, and onchain data indexing with Envio HyperIndex."},{"title":"Blockchain Indexing Challenges and How to Solve Them","permalink":"/blog/common-challenges-in-blockchain-indexing","date":"2023-08-31","tags":[],"image":"/blog-assets/blockchain-indexing-challenges.png","description":"The most common blockchain indexing challenges explained: slow syncs, chain reorgs, multichain complexity, and how Envio HyperIndex solves each one."},{"title":"How to Query Blockchain Data: 3 Methods Compared","permalink":"/blog/methods-to-query-blockchain-data-and-their-trade-offs","date":"2023-08-08","tags":[],"image":"/blog-assets/how-to-query-blockchain-data.png","description":"How to query blockchain data: a practical comparison of self-hosted nodes, RPC providers, and indexers with honest trade-offs on speed, cost, and flexibility."}] No newline at end of file
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Populate the empty blog post date field before publishing.

On Line 1, the entry for /blog/migrating-alchemy-subgraphs-to-envio has "date":"". This can break or misorder consumers that parse/sort this index by date.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@static/blog-posts-index.json` at line 1, The JSON index has an empty "date"
for the entry with permalink "/blog/migrating-alchemy-subgraphs-to-envio" (title
"How to Migrate Alchemy Subgraphs to Envio"); populate its "date" value with the
correct publish date in the same YYYY-MM-DD format used by other entries (e.g.,
"2026-05-14" or the actual intended publish date) and ensure the entry remains
valid JSON so consumers that sort by date won't break.

Comment thread vercel.json
Comment on lines +13 to +24
"source": "/docs/:path((?!.+\\.md$).+)",
"has": [
{ "type": "header", "key": "accept", "value": ".*text/markdown.*" }
],
"destination": "/docs/:path.md"
},
{
"source": "/blog/:path((?!.+\\.md$).+)",
"has": [
{ "type": "header", "key": "accept", "value": ".*text/markdown.*" }
],
"destination": "/blog/:path.md"
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟠 Major | ⚡ Quick win

🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
jq -r '.rewrites[]?.source' vercel.json | nl -ba

Repository: enviodev/docs

Length of output: 100


🏁 Script executed:

cat vercel.json

Repository: enviodev/docs

Length of output: 1053


Root /docs and /blog paths lack markdown content negotiation.

The existing rewrite patterns require a path segment after /docs/ or /blog/—bare requests to /docs or /blog with Accept: text/markdown will not be redirected to their .md equivalents. Add exact-path rewrites for the root endpoints before the parametrized rules:

Suggested fix
   "rewrites": [
     {
       "source": "/mcp",
       "destination": "/api/mcp"
     },
+    {
+      "source": "/docs",
+      "has": [
+        { "type": "header", "key": "accept", "value": ".*text/markdown.*" }
+      ],
+      "destination": "/docs.md"
+    },
     {
       "source": "/docs/:path((?!.+\\.md$).+)",
       "has": [
         { "type": "header", "key": "accept", "value": ".*text/markdown.*" }
       ],
       "destination": "/docs/:path.md"
     },
+    {
+      "source": "/blog",
+      "has": [
+        { "type": "header", "key": "accept", "value": ".*text/markdown.*" }
+      ],
+      "destination": "/blog.md"
+    },
     {
       "source": "/blog/:path((?!.+\\.md$).+)",
       "has": [
         { "type": "header", "key": "accept", "value": ".*text/markdown.*" }
       ],
       "destination": "/blog/:path.md"
     }
   ],
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@vercel.json` around lines 13 - 24, The rewrite rules for "/docs/:path(...)"
and "/blog/:path(...)" miss exact-root matches, so add two exact-path rewrite
entries with "source": "/docs" -> "destination": "/docs.md" and "source":
"/blog" -> "destination": "/blog.md" and include the same "has" header check
(Accept: .*text/markdown.*); place these two new entries immediately before the
existing parametrized rules so bare requests to /docs and /blog with Accept:
text/markdown are rewritten correctly.

@nikbhintade nikbhintade removed the request for review from keenbeen32 May 18, 2026 10:28
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.

1 participant