From 4a9ca355ae868a77ce3eff1b1781360306773232 Mon Sep 17 00:00:00 2001 From: y3drk Date: Mon, 1 Jun 2026 11:35:59 +0200 Subject: [PATCH 1/7] Implement goals 1,6,7 from 06/01/26 Slack thread --- CLAUDE.md | 2 +- .../starlight/sidebar-topics/integrate.ts | 2 +- .../docs/docs/integrate/why-ensnode.mdx | 37 +++++-------------- 3 files changed, 12 insertions(+), 29 deletions(-) diff --git a/CLAUDE.md b/CLAUDE.md index 47dc3e3d86..c317064255 120000 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -1 +1 @@ -AGENTS.md \ No newline at end of file +AGENTS.md diff --git a/docs/ensnode.io/config/integrations/starlight/sidebar-topics/integrate.ts b/docs/ensnode.io/config/integrations/starlight/sidebar-topics/integrate.ts index dcc5856c27..5c943f4e1d 100644 --- a/docs/ensnode.io/config/integrations/starlight/sidebar-topics/integrate.ts +++ b/docs/ensnode.io/config/integrations/starlight/sidebar-topics/integrate.ts @@ -18,7 +18,7 @@ export const integrateSidebarTopic = { }, { label: "ENS Subgraph", - collapsed: true, + collapsed: false, badge: { text: "LEGACY", variant: "danger", diff --git a/docs/ensnode.io/src/content/docs/docs/integrate/why-ensnode.mdx b/docs/ensnode.io/src/content/docs/docs/integrate/why-ensnode.mdx index 06faf71541..06e65f5883 100644 --- a/docs/ensnode.io/src/content/docs/docs/integrate/why-ensnode.mdx +++ b/docs/ensnode.io/src/content/docs/docs/integrate/why-ensnode.mdx @@ -40,46 +40,29 @@ No more wiring up a per-chain Subgraph, reconciling overlapping ENS Nametrees, o ## Full-stack integration surfaces -Whatever your stack looks like, there's an ENSNode integration shaped for it: +Whatever your stack looks like, there's an ENSNode integration shaped for it. - - - - - ## Why it matters beyond your app -Indexed ENS data is critical infrastructure for ENS β€” and the legacy ENS Subgraph is fundamentally unsuitable for ENSv2. Closing that gap is required for many of ENS's most important apps, including the official ENS Manager App. +Indexed ENS data is critical infrastructure for ENS β€” and the legacy ENS Subgraph is fundamentally unsuitable for ENSv2. Closing that gap is required for many of ENS's most important apps. + - ## Join those already building on ENSNode From b84addb9a4b6ade7746f89e4182c7919aeb1402e Mon Sep 17 00:00:00 2001 From: y3drk Date: Mon, 1 Jun 2026 12:52:42 +0200 Subject: [PATCH 2/7] Implement goal 8 from 06/01/26 Slack thread, by applying a Google Doc feedback, pt.1 --- docs/ensnode.io/astro.config.mjs | 7 +- .../starlight/sidebar-topics/integrate.ts | 20 ++- .../docs/integrate/ens-subgraph/index.mdx | 168 ++---------------- .../src/content/docs/docs/integrate/index.mdx | 2 +- .../{ => why-ensnode}/ensv2-readiness.mdx | 0 .../index.mdx} | 4 +- .../why-ensnode/keep-ens-working.mdx | 153 ++++++++++++++++ 7 files changed, 185 insertions(+), 169 deletions(-) rename docs/ensnode.io/src/content/docs/docs/integrate/{ => why-ensnode}/ensv2-readiness.mdx (100%) rename docs/ensnode.io/src/content/docs/docs/integrate/{why-ensnode.mdx => why-ensnode/index.mdx} (98%) create mode 100644 docs/ensnode.io/src/content/docs/docs/integrate/why-ensnode/keep-ens-working.mdx diff --git a/docs/ensnode.io/astro.config.mjs b/docs/ensnode.io/astro.config.mjs index 01fc65f8ad..25202aaf14 100644 --- a/docs/ensnode.io/astro.config.mjs +++ b/docs/ensnode.io/astro.config.mjs @@ -79,11 +79,12 @@ export default defineConfig({ "/docs/services/ensrainbow/concepts/label-sets-and-versioning", "/docs/reference/rest-api": "/docs/services/ensapi/reference/api-reference", "/docs/integrate/hosted-instances": "/docs/hosted-instances", - "/docs/integrate/migrate-from-subgraph": "/docs/integrate/ensv2-readiness", - "/docs/reference/ensnode-v2-notes": "/docs/integrate/ensv2-readiness", + "/docs/integrate/migrate-from-subgraph": "/docs/integrate/why-ensnode/ensv2-readiness", + "/docs/reference/ensnode-v2-notes": "/docs/integrate/why-ensnode/ensv2-readiness", "/docs/reference/mainnet-registered-subnames-of-subregistries": "/docs/integrate/omnigraph", - "/docs/reference/roadmap": "/docs/integrate/ensv2-readiness", + "/docs/reference/roadmap": "/docs/integrate/why-ensnode/ensv2-readiness", "/docs/reference/what-is-ensnode": "/docs/integrate/why-ensnode", + "/docs/integrate/ensv2-readiness": "/docs/integrate/why-ensnode/ensv2-readiness", }, env: { schema: { diff --git a/docs/ensnode.io/config/integrations/starlight/sidebar-topics/integrate.ts b/docs/ensnode.io/config/integrations/starlight/sidebar-topics/integrate.ts index 5c943f4e1d..7e20f42bbe 100644 --- a/docs/ensnode.io/config/integrations/starlight/sidebar-topics/integrate.ts +++ b/docs/ensnode.io/config/integrations/starlight/sidebar-topics/integrate.ts @@ -10,11 +10,21 @@ export const integrateSidebarTopic = { }, { label: "Why ENSNode?", - link: "/docs/integrate/why-ensnode", - }, - { - label: "ENSv2 Readiness", - link: "/docs/integrate/ensv2-readiness", + collapsed: false, + items: [ + { + label: "Overview", + link: "/docs/integrate/why-ensnode", + }, + { + label: "Keep ENS apps working 🚨", + link: "/docs/integrate/why-ensnode/keep-ens-working", + }, + { + label: "ENSv2 Readiness", + link: "/docs/integrate/why-ensnode/ensv2-readiness", + }, + ], }, { label: "ENS Subgraph", diff --git a/docs/ensnode.io/src/content/docs/docs/integrate/ens-subgraph/index.mdx b/docs/ensnode.io/src/content/docs/docs/integrate/ens-subgraph/index.mdx index 75d4cc0479..9fb3469018 100644 --- a/docs/ensnode.io/src/content/docs/docs/integrate/ens-subgraph/index.mdx +++ b/docs/ensnode.io/src/content/docs/docs/integrate/ens-subgraph/index.mdx @@ -11,6 +11,11 @@ import { LinkCard } from "@astrojs/starlight/components"; :::danger[🚨 The ENS Subgraph is not ENSv2 compatible] The ENS Subgraph **fundamentally fails as a source of ENS data as soon as ENSv2 launches.** + ::: -## The ENS Subgraph became critical infrastructure - -Over the years, the ENS Subgraph quietly became one of the most depended-on pieces of infrastructure in ENS. An enormous swath of the ENS ecosystem β€” and much of the broader web3 / Ethereum ecosystem β€” reads ENS data through it, directly or indirectly. - -### Usage at scale - -The ENS Subgraph is a cornerstone of the current ENS architecture (ENSv1), handling an extraordinary volume of requests: - -- **Approx. 2 million average daily requests** -- **Over 717 million requests annually** - -
- ENS Subgraph usage metrics showing daily query volume -
- ENS Subgraph daily query volume following the transition to Graph Network hosting (June 20, 2024 - onward) -
-
- -This volume sets the floor: it's the minimum scale at which any replacement must operate. - -## Applications dependent on the ENS Subgraph - -The list below is a **partial** map of the projects and applications that depend on the ENS Subgraph for their functionality β€” directly, or indirectly through services like the ENS Metadata Service, ENSjs, or the Ethereum Comments Protocol. When ENSv2 launches, indexed ENS data must keep flowing to all of these, or they break. - -### Critical ENS Apps & Infrastructure - -- **[Official ENS Manager App](https://app.ens.domains/)** β€” the primary interface for ENS domain management. -- **[ENS Metadata Service](https://github.com/ensdomains/ens-metadata-service)** β€” used by numerous downstream services including NFT marketplaces (OpenSea, Rarible), Rainbow Wallet, and Rotki. -- **[ENSjs](https://github.com/ensdomains/ensjs)** β€” JavaScript library for ENS integration, used by many ENS-integrated applications. -- **[ENS Test Environment](https://github.com/ensdomains/ens-test-env)** β€” testing framework for ENS development. -- **[Linea Names](https://github.com/Consensys/linea-ens)** β€” primary management interface for `linea.eth` subnames on Linea. - -### ENS Registrars - -- **[Grails](https://grails.app/)** β€” by the [EthId Foundation](https://ethid.org/). -- **[ENS Vision](https://ensvision.com/)** -- **[OpenSea](https://opensea.io/)** and **[Rarible](https://rarible.com/)** β€” via their dependency on the ENS Metadata Service. -- **[ENS Tools](https://ens.tools/)** -- **[Snipe Zone](https://snipe.zone/)** -- **[Nameful](https://github.com/blockful/nameful)** β€” by [Blockful](https://www.blockful.io/). - -### Wallets - -- **[Rainbow Wallet](https://rainbow.me/)** β€” mobile wallet and browser extension. -- **[MyEtherWallet](https://www.myetherwallet.com/)** β€” Ethereum wallet. -- **[Safe Transaction Service](https://github.com/safe-global/safe-transaction-service)** β€” by [Safe](https://safe.global/). - -### Chain Explorers - -- **[Blockscout](https://www.blockscout.com/)** β€” blockchain explorer platform. -- **[EthVM](https://www.ethvm.com/)** β€” by [MyEtherWallet](https://www.myetherwallet.com/). -- **[Cartesi Explorer](https://explorer.cartesi.io/)** β€” by [Cartesi](https://cartesi.io/). - -### DAO Infrastructure - -- **[Snapshot.js](https://github.com/snapshot-labs/snapshot.js)** β€” TypeScript library for Snapshot integration. -- **[Snapshot](https://snapshot.box/)** β€” via [Stamp](https://github.com/snapshot-labs/stamp). This is a distinct integration from `snapshot.js`. -- **[DAOStar](https://daostar.org/)** β€” by [Metagov](http://Metagov.org). -- **[ENS Metadata Manager](https://ensmetadata.app/)** β€” by [Lighthouse](https://lighthouse.cx/) ([more info](https://discuss.ens.domains/t/kickoff-organizational-metadata-on-ens/21459/7?u=lightwalker.eth)). -- **[Optimism GovQuests](https://op-govquests.vercel.app/)** β€” by [Bleu](https://bleu.builders/en). - -### ENS History Viewers - -- **[ENSvolution](https://www.ensvolution.xyz/?name=nick.eth)** β€” by [JustaName](https://www.justaname.id/). -- **[PastENS](https://www.pastens.com/)** -- **[Swiss Knife](https://swiss-knife.xyz/)** β€” by [apoorv.eth](https://x.com/apoorveth). -- **[ENS Wayback Machine](https://wayback-machine.eth.limo/)** β€” by [Blossom](https://blossom.software/). - -### ENS Developer Tools - -- **[ENS Resolver](https://adraffy.github.io/ens-normalize.js/test/resolver.html)** β€” by [Andrew Raffensperger](https://raffy.antistupid.com/). -- **[ENS Tools](https://tools.ens.xyz/)** β€” by [ENS Labs](https://www.enslabs.org/). -- **[ENS Tools](https://github.com/ensdomains/ens-misctools)** β€” by Serenae. - -### ENS CLI Tools - -- **[Atlas](https://github.com/stevedylandev/atlas)** β€” by [Steve Dylan](https://x.com/stevedylandev). -- **[Ensemble](https://github.com/estmcmxci/ensemble-beta)** β€” by [estmcmxci](https://x.com/estmcmxci). -- **[Basenames CLI](https://github.com/estmcmxci/basenames-cli)** β€” by [estmcmxci](https://x.com/estmcmxci). -- **[Grails CLI](https://github.com/grailsmarket/cli)** β€” by the [EthId Foundation](https://ethid.org/) (uses the Grails API, which uses ENSNode). - -### ENS MCP Servers - -- **[ENS MCP Service](https://github.com/thenamespace/ens-mcp)** β€” by [Namespace](https://www.namespace.ninja/). -- **[ENS MCP Service](https://discuss.ens.domains/t/introducing-the-ens-mcp-server-bringing-ens-to-claude-and-other-ai-assistants/20347)** β€” by [JustaName](https://www.justaname.id/). -- **[ENS MCP Service](https://github.com/kukapay/ens-mcp)** β€” by [Kukapay](https://github.com/kukapay). - -### ENS Avatar & Metadata Services - -- **[Stamp](https://github.com/snapshot-labs/stamp)** β€” by [Snapshot Labs](https://snapshot.box/). -- **[ENS Metadata Flarecloud](https://github.com/ethereumidentitykit/ens-metadata-flarecloud)** β€” by the [EthId Foundation](https://ethid.org/). - -### ENS Contract Naming Platforms - -- **[Enscribe](https://www.enscribe.xyz/)** - -### Ethereum Libraries - -- **[safe-eth-py](https://github.com/safe-global/safe-eth-py)** β€” by [Safe](https://safe.global/). - -### ENS Social Media Services - -- **[ENS Market Bot](https://github.com/ethereumidentitykit/ens-market-bot)** β€” by the [EthId Foundation](https://ethid.org/). - -### AI Agents / x402 / Micropayments / Proof of Humanity - -- **[Skills](https://github.com/thenamespace/skills)** β€” by [Namespace](https://www.namespace.ninja/). -- **[PrismOS](https://github.com/Koploseus/PrismOS)** -- **[HumanENS](https://humanens.eth.limo/)** ([GitHub](https://github.com/z-purr/HumanENS)) -- **[nayym](https://nayym.xyz/)** ([GitHub](https://github.com/thisisommore/nayym-cli)) - -### DeFi Applications - -- **[Rotki](https://rotki.com/)** β€” privacy-preserving portfolio tracking. - -### Social Applications - -- **[Ethereum Follow Protocol](https://efp.app/)** β€” onchain social graph protocol. -- **[LinkChain](https://ns-assignment.vercel.app/)** ([GitHub](https://github.com/divi2806/ns-assignment)) -- **[Dapp Rank](https://dapprank.eth.link/)** β€” by [Joel Thorstensson](https://x.com/joelthorst). -- **[Decentraland Builder](https://decentraland.org/builder/)** ([GitHub](https://github.com/decentraland/builder)) β€” by [Decentraland](https://decentraland.org/). -- **[Decentraland Creator Hub](https://decentraland.org/create)** ([GitHub](https://github.com/decentraland/creator-hub)) β€” by [Decentraland](https://decentraland.org/). - -### Other Key Applications - -- **[ENSPro](https://enspro.xyz/)** β€” by NameStone. -- **[ENSBook](https://github.com/hibbb/ensbook)** β€” by Liuliuben. -- **[L2 Subnames](https://github.com/thenamespace/l2-subnames)** β€” by Namespace. -- **[ENS Data](https://ensdata.net/)** β€” by Pugson. -- **[ENS Ideas](https://github.com/frolic/ens-ideas)** β€” by Frolic. -- **[Next.ID](https://next.id/)** β€” which also powers [Web3.bio](http://web3.bio/) (by Yan Zhu) and [Eth.cd](https://eth.cd/) (by Webhash / Hid). - -:::note[Help us expand this list] -Do you know of other applications that rely on the ENS Subgraph that aren't listed here? Please [open a PR](https://github.com/namehash/ensnode) to update this documentation. -::: - -## What this means - -The breadth of applications above shows that indexed ENS data is critical infrastructure for ENS and the broader ecosystem β€” and that there is large, proven demand for it today. When ENSv2 launches, the Subgraph's [Key Limitations](/docs/integrate/ens-subgraph/key-limitations) become breaking for these apps. ENSNode exists to keep indexed ENS data flowing through the transition and beyond, with a robust, scalable, multichain, ENSv2-ready replacement. - -## Already building directly on ENSNode - -A growing set of companies and apps have already moved onto ENSNode and future-proofed their ENS applications β€” [see who's already building on ENSNode](/docs/integrate/why-ensnode#join-those-already-building-on-ensnode). - -## Next Steps +## ENSNode Subgraph compatability -Next, consider the key limitations of the legacy ENS Subgraph. +ENSNode maintains a verified Subgraph-compatible API for migrating existing integrations, but it is **not** the path forward for ENSv2. - -Or, prepare your app or platform for ENSv2 by adopting ENSNode's Omnigraph API. - - diff --git a/docs/ensnode.io/src/content/docs/docs/integrate/index.mdx b/docs/ensnode.io/src/content/docs/docs/integrate/index.mdx index e878dc1f51..504f8b0b9f 100644 --- a/docs/ensnode.io/src/content/docs/docs/integrate/index.mdx +++ b/docs/ensnode.io/src/content/docs/docs/integrate/index.mdx @@ -14,7 +14,7 @@ import OmnigraphStaticExampleSet from "@components/organisms/OmnigraphStaticExam [ENSv2](https://ens.domains/ensv2) is the next generation of the [Ethereum Name Service](https://ens.domains) β€” a protocol upgrade that fundamentally changes how the ENS protocol works. ## What is the ENS Omnigraph? diff --git a/docs/ensnode.io/src/content/docs/docs/integrate/ensv2-readiness.mdx b/docs/ensnode.io/src/content/docs/docs/integrate/why-ensnode/ensv2-readiness.mdx similarity index 100% rename from docs/ensnode.io/src/content/docs/docs/integrate/ensv2-readiness.mdx rename to docs/ensnode.io/src/content/docs/docs/integrate/why-ensnode/ensv2-readiness.mdx diff --git a/docs/ensnode.io/src/content/docs/docs/integrate/why-ensnode.mdx b/docs/ensnode.io/src/content/docs/docs/integrate/why-ensnode/index.mdx similarity index 98% rename from docs/ensnode.io/src/content/docs/docs/integrate/why-ensnode.mdx rename to docs/ensnode.io/src/content/docs/docs/integrate/why-ensnode/index.mdx index 06e65f5883..3a77b702ab 100644 --- a/docs/ensnode.io/src/content/docs/docs/integrate/why-ensnode.mdx +++ b/docs/ensnode.io/src/content/docs/docs/integrate/why-ensnode/index.mdx @@ -16,7 +16,7 @@ ENSNode is built around ENSv2 from the ground up. The same query works against a ## One unified API over ENSv1 + ENSv2 @@ -102,7 +102,7 @@ A growing set of companies and apps have already moved onto ENSNode and have fut + ENS Subgraph usage metrics showing daily query volume +
+ ENS Subgraph daily query volume following the transition to Graph Network hosting (June 20, 2024 + onward) +
+ + +This volume sets the floor: it's the minimum scale at which any replacement must operate. + +## Applications dependent on the ENS Subgraph + +The list below is a **partial** map of the projects and applications that depend on the ENS Subgraph for their functionality β€” directly, or indirectly through services like the ENS Metadata Service, ENSjs, or the Ethereum Comments Protocol. When ENSv2 launches, indexed ENS data must keep flowing to all of these, or they break. + +### ENS Registrars + +- **[Official ENS Manager App](https://app.ens.domains/)** β€” the official interface for ENS domain registration and management. +- **[Grails](https://grails.app/)** β€” by the [EthId Foundation](https://ethid.org/). +- **[ENS Vision](https://ensvision.com/)** +- **[OpenSea](https://opensea.io/)** and **[Rarible](https://rarible.com/)** β€” via their dependency on the ENS Metadata Service. +- **[ENS Tools](https://ens.tools/)** +- **[Snipe Zone](https://snipe.zone/)** +- **[Nameful](https://github.com/blockful/nameful)** β€” by [Blockful](https://www.blockful.io/). +- **[Linea Names](https://names.linea.build/)** β€” primary management interface for `linea.eth` subnames on Linea. +- **[ENSBook](https://github.com/hibbb/ensbook)** β€” by [Liuliuben](https://x.com/forlbb). +- **[ENS Ideas](https://github.com/frolic/ens-ideas)** β€” by [Frolic](https://x.com/frolic). + +### Wallets + +- **[Rainbow Wallet](https://rainbow.me/)** +- **[MyEtherWallet](https://www.myetherwallet.com/)** +- **[Safe Transaction Service](https://github.com/safe-global/safe-transaction-service)** β€” by [Safe](https://safe.global/). +- **[Rotki](https://rotki.com/)** β€” privacy-preserving portfolio tracking. + +### Chain Explorers + +- **[Blockscout](https://www.blockscout.com/)** +- **[EthVM](https://www.ethvm.com/)** β€” by [MyEtherWallet](https://www.myetherwallet.com/). +- **[Cartesi Explorer](https://explorer.cartesi.io/)** β€” by [Cartesi](https://cartesi.io/). + +### DAO Infrastructure + +- **[Snapshot](https://snapshot.box/)** β€” via [Stamp](https://github.com/snapshot-labs/stamp). This is a distinct integration from `snapshot.js`. +- **[Snapshot.js](https://github.com/snapshot-labs/snapshot.js)** β€” TypeScript library for Snapshot integration. +- **[DAOStar](https://daostar.org/)** β€” by [Metagov](http://Metagov.org). +- **[ENS Metadata Manager](https://ensmetadata.app/)** β€” by [Lighthouse](https://lighthouse.cx/) ([more info](https://discuss.ens.domains/t/kickoff-organizational-metadata-on-ens/21459/7?u=lightwalker.eth)). +- **[Optimism GovQuests](https://op-govquests.vercel.app/)** β€” by [Bleu](https://bleu.builders/en). + +### ENS History Viewers + +- **[ENSvolution](https://www.ensvolution.xyz/?name=nick.eth)** β€” by [JustaName](https://www.justaname.id/). +- **[PastENS](https://www.pastens.com/)** +- **[Swiss Knife](https://swiss-knife.xyz/)** β€” by [apoorv.eth](https://x.com/apoorveth). +- **[ENS Wayback Machine](https://wayback-machine.eth.limo/)** β€” by [Blossom](https://blossom.software/). + +### Developer Tools + +- **[Enscribe](https://www.enscribe.xyz/)** β€” ENS contract naming platform +- **[ENSjs](https://github.com/ensdomains/ensjs)** β€” The official ENS JavaScript library. +- **[ENS Test Environment](https://github.com/ensdomains/ens-test-env)** β€” The official testing environment for ENS development. +- **[ENS Resolver](https://adraffy.github.io/ens-normalize.js/test/resolver.html)** β€” by [Andrew Raffensperger](https://raffy.antistupid.com/). +- **[ENS Tools](https://tools.ens.xyz/)** β€” by [ENS Labs](https://www.enslabs.org/). +- **[ENS Tools](https://github.com/ensdomains/ens-misctools)** β€” by Serenae. +- **[ENS Data](https://ensdata.net/)** β€” by [Pugson](https://wojtek.im/). +- **[safe-eth-py](https://github.com/safe-global/safe-eth-py)** β€” by [Safe](https://safe.global/). + +### ENS CLI Tools + +- **[Atlas](https://github.com/stevedylandev/atlas)** β€” by [Steve Dylan](https://x.com/stevedylandev). +- **[Ensemble](https://github.com/estmcmxci/ensemble-beta)** β€” by [estmcmxci](https://x.com/estmcmxci). +- **[Basenames CLI](https://github.com/estmcmxci/basenames-cli)** β€” by [estmcmxci](https://x.com/estmcmxci). +- **[Grails CLI](https://github.com/grailsmarket/cli)** β€” by the [EthId Foundation](https://ethid.org/) (uses the Grails API, which uses ENSNode). + +### ENS AI Agents + +- **[ENS MCP Service](https://github.com/thenamespace/ens-mcp)** β€” by [Namespace](https://www.namespace.ninja/). +- **[ENS MCP Service](https://discuss.ens.domains/t/introducing-the-ens-mcp-server-bringing-ens-to-claude-and-other-ai-assistants/20347)** β€” by [JustaName](https://www.justaname.id/). +- **[ENS MCP Service](https://github.com/kukapay/ens-mcp)** β€” by [Kukapay](https://github.com/kukapay). +- **[Skills](https://github.com/thenamespace/skills)** β€” by [Namespace](https://www.namespace.ninja/). +- **[PrismOS](https://github.com/Koploseus/PrismOS)** +- **[HumanENS](https://humanens.eth.limo/)** ([GitHub](https://github.com/z-purr/HumanENS)) +- **[nayym](https://nayym.xyz/)** ([GitHub](https://github.com/thisisommore/nayym-cli)) + +### ENS Avatar & Metadata Services + +- **[ENS Metadata Service](https://github.com/ensdomains/ens-metadata-service)** β€” the primary service used across the ENS ecosystem for loading ENS avatar images. +- **[Stamp](https://github.com/snapshot-labs/stamp)** β€” by [Snapshot Labs](https://snapshot.box/). +- **[ENS Metadata Flarecloud](https://github.com/ethereumidentitykit/ens-metadata-flarecloud)** β€” by the [EthId Foundation](https://ethid.org/). + +### Social Applications + +- **[Ethereum Follow Protocol](https://efp.app/)** β€” onchain social graph protocol. +- **[LinkChain](https://ns-assignment.vercel.app/)** ([GitHub](https://github.com/divi2806/ns-assignment)) +- **[Dapp Rank](https://dapprank.eth.link/)** β€” by [Joel Thorstensson](https://x.com/joelthorst). +- **[Decentraland Builder](https://decentraland.org/builder/)** ([GitHub](https://github.com/decentraland/builder)) β€” by [Decentraland](https://decentraland.org/). +- **[Decentraland Creator Hub](https://decentraland.org/create)** ([GitHub](https://github.com/decentraland/creator-hub)) β€” by [Decentraland](https://decentraland.org/). +- **[Next.ID](https://next.id/)** +- **[Web3.bio](http://web3.bio/)** β€” builds on [Next.ID](https://next.id/). +- **[Eth.cd](https://eth.cd/)** β€” builds on [Next.ID](https://next.id/), by [Webhash](https://webhash.com/). +- **[ENS Market Bot](https://github.com/ethereumidentitykit/ens-market-bot)** β€” by the [EthId Foundation](https://ethid.org/). + +### Subname Providers + +- **[L2 Subnames](https://github.com/thenamespace/l2-subnames)** β€” by [Namespace](https://www.namespace.ninja/). +- **[ENSPro](https://enspro.xyz/)** β€” by [NameStone](https://namestone.com/). + +:::note[Help us expand this list] +Do you know of other applications that rely on the ENS Subgraph that aren't listed here? Please [open a PR](https://github.com/namehash/ensnode) to update this documentation. +::: + +## What this means + +The breadth of applications above shows that indexed ENS data is critical infrastructure for ENS and the broader ecosystem β€” and that there is large, proven demand for it today. When ENSv2 launches, the Subgraph's [Key Limitations](/docs/integrate/ens-subgraph/key-limitations) become breaking for these apps. ENSNode exists to keep indexed ENS data flowing through the transition and beyond, with a robust, scalable, multichain, ENSv2-ready replacement. + +## Already building directly on ENSNode + +A growing set of companies and apps have already moved onto ENSNode β€” [see who's already building on ENSNode](/docs/integrate/why-ensnode#join-those-already-building-on-ensnode). + +## Next Steps + +Next, consider the key limitations of the legacy ENS Subgraph. + + + +Or, prepare your app or platform for ENSv2 by adopting ENSNode's Omnigraph API. + + From e504b4b9fe748d4793414eba26a3e5cb8f8da060 Mon Sep 17 00:00:00 2001 From: y3drk Date: Mon, 1 Jun 2026 17:48:29 +0200 Subject: [PATCH 3/7] Implement goal 3 from 06/01/26 Slack thread --- .../components/atoms/NotENSv2ReadyBadge.tsx | 75 +++++ .../components/atoms/icons/CheckSolidIcon.tsx | 25 ++ .../src/components/atoms/icons/SkullIcon.tsx | 22 ++ .../ENSSubgraphDependentApp.astro | 19 ++ .../index.astro | 11 + .../why-ensnode/keep-ens-working.mdx | 308 ++++++++++++++---- docs/ensnode.io/src/styles/starlight.css | 6 +- 7 files changed, 405 insertions(+), 61 deletions(-) create mode 100644 docs/ensnode.io/src/components/atoms/NotENSv2ReadyBadge.tsx create mode 100644 docs/ensnode.io/src/components/atoms/icons/CheckSolidIcon.tsx create mode 100644 docs/ensnode.io/src/components/atoms/icons/SkullIcon.tsx create mode 100644 docs/ensnode.io/src/components/molecules/upgrade-to-omnigraph-required-table/ENSSubgraphDependentApp.astro create mode 100644 docs/ensnode.io/src/components/molecules/upgrade-to-omnigraph-required-table/index.astro diff --git a/docs/ensnode.io/src/components/atoms/NotENSv2ReadyBadge.tsx b/docs/ensnode.io/src/components/atoms/NotENSv2ReadyBadge.tsx new file mode 100644 index 0000000000..04e114eec0 --- /dev/null +++ b/docs/ensnode.io/src/components/atoms/NotENSv2ReadyBadge.tsx @@ -0,0 +1,75 @@ +import { CheckSolidIcon } from "@components/atoms/icons/CheckSolidIcon"; +import { SkullIcon } from "@components/atoms/icons/SkullIcon"; +import { XMarkIcon } from "@components/atoms/icons/XMarkIcon"; +import { Tooltip } from "@namehash/namehash-ui/legacy"; + +export interface ENSSubgraphDependentApplicationTransitionStages { + toENSNodeSubgraphCompatibleEndpoint: boolean; + toOmnigraphAPI: boolean; +} + +interface NotENSv2ReadyBadgeProps { + transitionStages: ENSSubgraphDependentApplicationTransitionStages; +} +export const NotENSv2ReadyBadge = ({ transitionStages }: NotENSv2ReadyBadgeProps) => { + return ( + + + ENSv2 not ready + + + } + > + + + ); +}; + +const ENSv2NotReadyTooltipContent = ({ transitionStages }: NotENSv2ReadyBadgeProps) => { + const transitionInfoStyles = + "flex flex-row flex-nowrap justify-start items-start gap-1 -mx-1 -my-1"; + + return ( +
+
+ {transitionStages.toENSNodeSubgraphCompatibleEndpoint ? ( + + ) : ( + + )} +

Transitioned from The Graph to ENSNode

+
+
+ {transitionStages.toOmnigraphAPI ? ( + + ) : ( + + )} +

Transitioned from the Subgraph API to the Omnigraph API

+
+
+ ); +}; + +// This icon is located here (and not exported) +// because this variant of info icon is only used in this badge +// and nowhere else in the codebase +const NotENSv2ReadyInfoIcon = (props: React.SVGProps) => ( + + + +); diff --git a/docs/ensnode.io/src/components/atoms/icons/CheckSolidIcon.tsx b/docs/ensnode.io/src/components/atoms/icons/CheckSolidIcon.tsx new file mode 100644 index 0000000000..d71c15b1b8 --- /dev/null +++ b/docs/ensnode.io/src/components/atoms/icons/CheckSolidIcon.tsx @@ -0,0 +1,25 @@ +export const CheckSolidIcon = (props: React.SVGProps) => ( + + + + + + + + + +); diff --git a/docs/ensnode.io/src/components/atoms/icons/SkullIcon.tsx b/docs/ensnode.io/src/components/atoms/icons/SkullIcon.tsx new file mode 100644 index 0000000000..e75918e679 --- /dev/null +++ b/docs/ensnode.io/src/components/atoms/icons/SkullIcon.tsx @@ -0,0 +1,22 @@ +export const SkullIcon = (props: React.SVGProps) => ( + + + + + + + + + + +); diff --git a/docs/ensnode.io/src/components/molecules/upgrade-to-omnigraph-required-table/ENSSubgraphDependentApp.astro b/docs/ensnode.io/src/components/molecules/upgrade-to-omnigraph-required-table/ENSSubgraphDependentApp.astro new file mode 100644 index 0000000000..c2876d803d --- /dev/null +++ b/docs/ensnode.io/src/components/molecules/upgrade-to-omnigraph-required-table/ENSSubgraphDependentApp.astro @@ -0,0 +1,19 @@ +--- +import { NotENSv2ReadyBadge } from "@components/atoms/NotENSv2ReadyBadge"; +import cc from "classcat"; +import type { ENSSubgraphDependentApplicationTransitionStages } from "@components/atoms/NotENSv2ReadyBadge"; + +const { toENSNodeSubgraphCompatibleEndpoint, toOmnigraphAPI } = + Astro.props as ENSSubgraphDependentApplicationTransitionStages; +--- + +
+ + +
diff --git a/docs/ensnode.io/src/components/molecules/upgrade-to-omnigraph-required-table/index.astro b/docs/ensnode.io/src/components/molecules/upgrade-to-omnigraph-required-table/index.astro new file mode 100644 index 0000000000..468a56d20a --- /dev/null +++ b/docs/ensnode.io/src/components/molecules/upgrade-to-omnigraph-required-table/index.astro @@ -0,0 +1,11 @@ +--- +--- + +
+

+ Upgrade to Omnigraph required +

+ +
diff --git a/docs/ensnode.io/src/content/docs/docs/integrate/why-ensnode/keep-ens-working.mdx b/docs/ensnode.io/src/content/docs/docs/integrate/why-ensnode/keep-ens-working.mdx index 16f272fef0..c72c7e8958 100644 --- a/docs/ensnode.io/src/content/docs/docs/integrate/why-ensnode/keep-ens-working.mdx +++ b/docs/ensnode.io/src/content/docs/docs/integrate/why-ensnode/keep-ens-working.mdx @@ -4,6 +4,8 @@ description: A vast ecosystem of apps depends on the ENS Subgraph β€” ENSNode ke --- import { LinkCard } from "@astrojs/starlight/components"; +import UpgradeToOmnigraphRequiredTable from "@components/molecules/upgrade-to-omnigraph-required-table/index.astro"; +import ENSSubgraphDependentApp from "@components/molecules/upgrade-to-omnigraph-required-table/ENSSubgraphDependentApp.astro"; ## The ENS Subgraph is not ENSv2 compatible @@ -32,95 +34,283 @@ The list below is a **partial** map of the projects and applications that depend ### ENS Registrars -- **[Official ENS Manager App](https://app.ens.domains/)** β€” the official interface for ENS domain registration and management. -- **[Grails](https://grails.app/)** β€” by the [EthId Foundation](https://ethid.org/). -- **[ENS Vision](https://ensvision.com/)** -- **[OpenSea](https://opensea.io/)** and **[Rarible](https://rarible.com/)** β€” via their dependency on the ENS Metadata Service. -- **[ENS Tools](https://ens.tools/)** -- **[Snipe Zone](https://snipe.zone/)** -- **[Nameful](https://github.com/blockful/nameful)** β€” by [Blockful](https://www.blockful.io/). -- **[Linea Names](https://names.linea.build/)** β€” primary management interface for `linea.eth` subnames on Linea. -- **[ENSBook](https://github.com/hibbb/ensbook)** β€” by [Liuliuben](https://x.com/forlbb). -- **[ENS Ideas](https://github.com/frolic/ens-ideas)** β€” by [Frolic](https://x.com/frolic). + + + Official ENS Manager App β€” the official interface for ENS domain registration and management. + + + + Grails β€” by the EthId Foundation. + + + + ENS Vision + + + + OpenSea and Rarible β€” via their dependency on the ENS Metadata Service. + + + + ENS Tools + + + + Snipe Zone + + + + Nameful β€” by Blockful. + + + + Linea Names β€” primary management interface for linea.eth subnames on Linea. + + + + ENSBook β€” by Liuliuben. + + + + ENS Ideas β€” by Frolic. + + ### Wallets -- **[Rainbow Wallet](https://rainbow.me/)** -- **[MyEtherWallet](https://www.myetherwallet.com/)** -- **[Safe Transaction Service](https://github.com/safe-global/safe-transaction-service)** β€” by [Safe](https://safe.global/). -- **[Rotki](https://rotki.com/)** β€” privacy-preserving portfolio tracking. + + + Rainbow Wallet + + + + MyEtherWallet + + + + Safe Transaction Service β€” by Safe. + + + + Rotki β€” privacy-preserving portfolio tracking. + + ### Chain Explorers -- **[Blockscout](https://www.blockscout.com/)** -- **[EthVM](https://www.ethvm.com/)** β€” by [MyEtherWallet](https://www.myetherwallet.com/). -- **[Cartesi Explorer](https://explorer.cartesi.io/)** β€” by [Cartesi](https://cartesi.io/). + + + Blockscout + + + + EthVM β€” by MyEtherWallet. + + + + Cartesi Explorer β€” by Cartesi. + + ### DAO Infrastructure -- **[Snapshot](https://snapshot.box/)** β€” via [Stamp](https://github.com/snapshot-labs/stamp). This is a distinct integration from `snapshot.js`. -- **[Snapshot.js](https://github.com/snapshot-labs/snapshot.js)** β€” TypeScript library for Snapshot integration. -- **[DAOStar](https://daostar.org/)** β€” by [Metagov](http://Metagov.org). -- **[ENS Metadata Manager](https://ensmetadata.app/)** β€” by [Lighthouse](https://lighthouse.cx/) ([more info](https://discuss.ens.domains/t/kickoff-organizational-metadata-on-ens/21459/7?u=lightwalker.eth)). -- **[Optimism GovQuests](https://op-govquests.vercel.app/)** β€” by [Bleu](https://bleu.builders/en). + + + Snapshot β€” via Stamp. This is a distinct integration from snapshot.js. + + + + Snapshot.js β€” TypeScript library for Snapshot integration. + + + + DAOStar β€” by Metagov. + + + + ENS Metadata Manager β€” by Lighthouse (more info). + + + + Optimism GovQuests β€” by Bleu. + + ### ENS History Viewers -- **[ENSvolution](https://www.ensvolution.xyz/?name=nick.eth)** β€” by [JustaName](https://www.justaname.id/). -- **[PastENS](https://www.pastens.com/)** -- **[Swiss Knife](https://swiss-knife.xyz/)** β€” by [apoorv.eth](https://x.com/apoorveth). -- **[ENS Wayback Machine](https://wayback-machine.eth.limo/)** β€” by [Blossom](https://blossom.software/). + + + ENSvolution β€” by JustaName. + + + + PastENS + + + + Swiss Knife β€” by apoorv.eth. + + + + ENS Wayback Machine β€” by Blossom. + + ### Developer Tools -- **[Enscribe](https://www.enscribe.xyz/)** β€” ENS contract naming platform -- **[ENSjs](https://github.com/ensdomains/ensjs)** β€” The official ENS JavaScript library. -- **[ENS Test Environment](https://github.com/ensdomains/ens-test-env)** β€” The official testing environment for ENS development. -- **[ENS Resolver](https://adraffy.github.io/ens-normalize.js/test/resolver.html)** β€” by [Andrew Raffensperger](https://raffy.antistupid.com/). -- **[ENS Tools](https://tools.ens.xyz/)** β€” by [ENS Labs](https://www.enslabs.org/). -- **[ENS Tools](https://github.com/ensdomains/ens-misctools)** β€” by Serenae. -- **[ENS Data](https://ensdata.net/)** β€” by [Pugson](https://wojtek.im/). -- **[safe-eth-py](https://github.com/safe-global/safe-eth-py)** β€” by [Safe](https://safe.global/). + + + Enscribe β€” ENS contract naming platform + + + + ENSjs β€” The official ENS JavaScript library. + + + + ENS Test Environment β€” The official testing environment for ENS development. + + + + ENS Resolver β€” by Andrew Raffensperger. + + + + ENS Tools β€” by ENS Labs. + + + + ENS Tools β€” by Serenae. + + + + ENS Data β€” by Pugson. + + + + safe-eth-py β€” by Safe. + + ### ENS CLI Tools -- **[Atlas](https://github.com/stevedylandev/atlas)** β€” by [Steve Dylan](https://x.com/stevedylandev). -- **[Ensemble](https://github.com/estmcmxci/ensemble-beta)** β€” by [estmcmxci](https://x.com/estmcmxci). -- **[Basenames CLI](https://github.com/estmcmxci/basenames-cli)** β€” by [estmcmxci](https://x.com/estmcmxci). -- **[Grails CLI](https://github.com/grailsmarket/cli)** β€” by the [EthId Foundation](https://ethid.org/) (uses the Grails API, which uses ENSNode). + + + Atlas β€” by Steve Dylan. + + + + Ensemble β€” by estmcmxci. + + + + Basenames CLI β€” by estmcmxci. + + + + Grails CLI β€” by the EthId Foundation (uses the Grails API, which uses ENSNode). + + ### ENS AI Agents -- **[ENS MCP Service](https://github.com/thenamespace/ens-mcp)** β€” by [Namespace](https://www.namespace.ninja/). -- **[ENS MCP Service](https://discuss.ens.domains/t/introducing-the-ens-mcp-server-bringing-ens-to-claude-and-other-ai-assistants/20347)** β€” by [JustaName](https://www.justaname.id/). -- **[ENS MCP Service](https://github.com/kukapay/ens-mcp)** β€” by [Kukapay](https://github.com/kukapay). -- **[Skills](https://github.com/thenamespace/skills)** β€” by [Namespace](https://www.namespace.ninja/). -- **[PrismOS](https://github.com/Koploseus/PrismOS)** -- **[HumanENS](https://humanens.eth.limo/)** ([GitHub](https://github.com/z-purr/HumanENS)) -- **[nayym](https://nayym.xyz/)** ([GitHub](https://github.com/thisisommore/nayym-cli)) + + + ENS MCP Service β€” by Namespace. + + + + ENS MCP Service β€” by JustaName. + + + + ENS MCP Service β€” by Kukapay. + + + + Skills β€” by Namespace. + + + + PrismOS + + + + HumanENS (GitHub) + + + + nayym (GitHub) + + ### ENS Avatar & Metadata Services -- **[ENS Metadata Service](https://github.com/ensdomains/ens-metadata-service)** β€” the primary service used across the ENS ecosystem for loading ENS avatar images. -- **[Stamp](https://github.com/snapshot-labs/stamp)** β€” by [Snapshot Labs](https://snapshot.box/). -- **[ENS Metadata Flarecloud](https://github.com/ethereumidentitykit/ens-metadata-flarecloud)** β€” by the [EthId Foundation](https://ethid.org/). + + + ENS Metadata Service β€” the primary service used across the ENS ecosystem for loading ENS avatar images. + + + + Stamp β€” by Snapshot Labs. + + + + ENS Metadata Flarecloud β€” by the EthId Foundation. + + ### Social Applications -- **[Ethereum Follow Protocol](https://efp.app/)** β€” onchain social graph protocol. -- **[LinkChain](https://ns-assignment.vercel.app/)** ([GitHub](https://github.com/divi2806/ns-assignment)) -- **[Dapp Rank](https://dapprank.eth.link/)** β€” by [Joel Thorstensson](https://x.com/joelthorst). -- **[Decentraland Builder](https://decentraland.org/builder/)** ([GitHub](https://github.com/decentraland/builder)) β€” by [Decentraland](https://decentraland.org/). -- **[Decentraland Creator Hub](https://decentraland.org/create)** ([GitHub](https://github.com/decentraland/creator-hub)) β€” by [Decentraland](https://decentraland.org/). -- **[Next.ID](https://next.id/)** -- **[Web3.bio](http://web3.bio/)** β€” builds on [Next.ID](https://next.id/). -- **[Eth.cd](https://eth.cd/)** β€” builds on [Next.ID](https://next.id/), by [Webhash](https://webhash.com/). -- **[ENS Market Bot](https://github.com/ethereumidentitykit/ens-market-bot)** β€” by the [EthId Foundation](https://ethid.org/). + + + Ethereum Follow Protocol β€” onchain social graph protocol. + + + + LinkChain (GitHub) + + + + Dapp Rank β€” by Joel Thorstensson. + + + + Decentraland Builder (GitHub) β€” by Decentraland. + + + + Decentraland Creator Hub (GitHub) β€” by Decentraland. + + + + Next.ID + + + + Web3.bio β€” builds on Next.ID. + + + + Eth.cd β€” builds on Next.ID, by Webhash. + + + + ENS Market Bot β€” by the EthId Foundation. + + ### Subname Providers -- **[L2 Subnames](https://github.com/thenamespace/l2-subnames)** β€” by [Namespace](https://www.namespace.ninja/). -- **[ENSPro](https://enspro.xyz/)** β€” by [NameStone](https://namestone.com/). + + + L2 Subnames β€” by Namespace. + + + + ENSPro β€” by NameStone. + + :::note[Help us expand this list] Do you know of other applications that rely on the ENS Subgraph that aren't listed here? Please [open a PR](https://github.com/namehash/ensnode) to update this documentation. diff --git a/docs/ensnode.io/src/styles/starlight.css b/docs/ensnode.io/src/styles/starlight.css index cdd5977307..7859a88109 100644 --- a/docs/ensnode.io/src/styles/starlight.css +++ b/docs/ensnode.io/src/styles/starlight.css @@ -224,13 +224,15 @@ a[rel="prev"]:hover { --sl-color-white): keep links their base color on hover so only the underline-offset animates. */ .sl-markdown-content a:hover:not(:where(.not-content *)), -.sl-markdown-content a:hover:not(:where(.not-content *)) > span { +.sl-markdown-content a:hover:not(:where(.not-content *)) > span, +.omnigraph-required-table-content { color: var(--sl-color-text-accent); } .sl-markdown-content > p a:not(:has(code), [role="tab"]), .sl-markdown-content :is(ul, ol) > li a:not(:has(code), [role="tab"]), -.starlight-aside__content a { +.starlight-aside__content a, +.omnigraph-required-table-content { text-decoration: underline; text-underline-offset: 4px; From 46c4baa2d314b33278d391312ecb0d27bb05b8c2 Mon Sep 17 00:00:00 2001 From: y3drk Date: Mon, 1 Jun 2026 18:46:14 +0200 Subject: [PATCH 4/7] Apply AI agents' suggestions, pt.1 + temporary fix the build error --- docs/ensnode.io/config/integrations/llms-txt.ts | 1 + .../src/components/atoms/NotENSv2ReadyBadge.tsx | 1 + .../src/components/atoms/icons/CheckSolidIcon.tsx | 2 ++ .../src/components/atoms/icons/SkullIcon.tsx | 2 ++ .../ENSSubgraphDependentApp.astro | 10 ++++------ .../content/docs/docs/integrate/ens-subgraph/index.mdx | 2 +- 6 files changed, 11 insertions(+), 7 deletions(-) diff --git a/docs/ensnode.io/config/integrations/llms-txt.ts b/docs/ensnode.io/config/integrations/llms-txt.ts index 88c7d603a3..f594b041a0 100644 --- a/docs/ensnode.io/config/integrations/llms-txt.ts +++ b/docs/ensnode.io/config/integrations/llms-txt.ts @@ -17,5 +17,6 @@ export const starlightLlmsTxtPlugin = starlightLlmsTxt({ "docs/integrate/integration-options/enskit/example", "docs/integrate/omnigraph/schema-reference", "docs/integrate/ens-subgraph/schema-reference", + "docs/integrate/why-ensnode/keep-ens-working", ], }); diff --git a/docs/ensnode.io/src/components/atoms/NotENSv2ReadyBadge.tsx b/docs/ensnode.io/src/components/atoms/NotENSv2ReadyBadge.tsx index 04e114eec0..7b458c4add 100644 --- a/docs/ensnode.io/src/components/atoms/NotENSv2ReadyBadge.tsx +++ b/docs/ensnode.io/src/components/atoms/NotENSv2ReadyBadge.tsx @@ -1,3 +1,4 @@ +import type React from "react"; import { CheckSolidIcon } from "@components/atoms/icons/CheckSolidIcon"; import { SkullIcon } from "@components/atoms/icons/SkullIcon"; import { XMarkIcon } from "@components/atoms/icons/XMarkIcon"; diff --git a/docs/ensnode.io/src/components/atoms/icons/CheckSolidIcon.tsx b/docs/ensnode.io/src/components/atoms/icons/CheckSolidIcon.tsx index d71c15b1b8..556872a5ff 100644 --- a/docs/ensnode.io/src/components/atoms/icons/CheckSolidIcon.tsx +++ b/docs/ensnode.io/src/components/atoms/icons/CheckSolidIcon.tsx @@ -1,3 +1,5 @@ +import type React from "react"; + export const CheckSolidIcon = (props: React.SVGProps) => ( ) => ( + class="w-full h-fit flex flex-col justify-start items-start gap-2.5 px-4 py-3 border-t border-gray-200"> ::: -## ENSNode Subgraph compatability +## ENSNode Subgraph compatibility ENSNode maintains a verified Subgraph-compatible API for migrating existing integrations, but it is **not** the path forward for ENSv2. From 746340335d0c34fd999eec5a531b29a92b18fdf1 Mon Sep 17 00:00:00 2001 From: y3drk Date: Mon, 1 Jun 2026 19:06:44 +0200 Subject: [PATCH 5/7] Apply AI agents' suggestions, pt.2 --- .../docs/docs/integrate/why-ensnode/keep-ens-working.mdx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/ensnode.io/src/content/docs/docs/integrate/why-ensnode/keep-ens-working.mdx b/docs/ensnode.io/src/content/docs/docs/integrate/why-ensnode/keep-ens-working.mdx index c72c7e8958..cb6f61fd40 100644 --- a/docs/ensnode.io/src/content/docs/docs/integrate/why-ensnode/keep-ens-working.mdx +++ b/docs/ensnode.io/src/content/docs/docs/integrate/why-ensnode/keep-ens-working.mdx @@ -124,7 +124,7 @@ The list below is a **partial** map of the projects and applications that depend - DAOStar β€” by Metagov. + DAOStar β€” by Metagov. @@ -288,7 +288,7 @@ The list below is a **partial** map of the projects and applications that depend - Web3.bio β€” builds on Next.ID. + Web3.bio β€” builds on Next.ID. From 499a4d63f76382a84644bf7fc8374ab95fbc9374 Mon Sep 17 00:00:00 2001 From: y3drk Date: Wed, 3 Jun 2026 08:32:10 +0200 Subject: [PATCH 6/7] Apply 06/02/26 GitHub review feedback --- CLAUDE.md | 2 +- .../components/atoms/NotENSv2ReadyBadge.tsx | 12 ++++--- .../index.astro | 4 +-- .../docs/integrate/ens-subgraph/index.mdx | 6 ++-- .../docs/docs/integrate/why-ensnode/index.mdx | 4 +-- .../why-ensnode/keep-ens-working.mdx | 36 +++++++++---------- 6 files changed, 33 insertions(+), 31 deletions(-) diff --git a/CLAUDE.md b/CLAUDE.md index c317064255..47dc3e3d86 120000 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -1 +1 @@ -AGENTS.md +AGENTS.md \ No newline at end of file diff --git a/docs/ensnode.io/src/components/atoms/NotENSv2ReadyBadge.tsx b/docs/ensnode.io/src/components/atoms/NotENSv2ReadyBadge.tsx index 7b458c4add..e2ed856281 100644 --- a/docs/ensnode.io/src/components/atoms/NotENSv2ReadyBadge.tsx +++ b/docs/ensnode.io/src/components/atoms/NotENSv2ReadyBadge.tsx @@ -3,6 +3,7 @@ import { CheckSolidIcon } from "@components/atoms/icons/CheckSolidIcon"; import { SkullIcon } from "@components/atoms/icons/SkullIcon"; import { XMarkIcon } from "@components/atoms/icons/XMarkIcon"; import { Tooltip } from "@namehash/namehash-ui/legacy"; +import { useIsMobile } from "@namehash/namehash-ui"; export interface ENSSubgraphDependentApplicationTransitionStages { toENSNodeSubgraphCompatibleEndpoint: boolean; @@ -13,14 +14,16 @@ interface NotENSv2ReadyBadgeProps { transitionStages: ENSSubgraphDependentApplicationTransitionStages; } export const NotENSv2ReadyBadge = ({ transitionStages }: NotENSv2ReadyBadgeProps) => { + const isMobile = useIsMobile(440); return ( + - ENSv2 not ready + Not ENSv2 ready } @@ -31,11 +34,10 @@ export const NotENSv2ReadyBadge = ({ transitionStages }: NotENSv2ReadyBadgeProps }; const ENSv2NotReadyTooltipContent = ({ transitionStages }: NotENSv2ReadyBadgeProps) => { - const transitionInfoStyles = - "flex flex-row flex-nowrap justify-start items-start gap-1 -mx-1 -my-1"; + const transitionInfoStyles = "flex flex-row flex-nowrap justify-start items-start gap-1.5"; return ( -
+
{transitionStages.toENSNodeSubgraphCompatibleEndpoint ? ( diff --git a/docs/ensnode.io/src/components/molecules/upgrade-to-omnigraph-required-table/index.astro b/docs/ensnode.io/src/components/molecules/upgrade-to-omnigraph-required-table/index.astro index 468a56d20a..2671e9af60 100644 --- a/docs/ensnode.io/src/components/molecules/upgrade-to-omnigraph-required-table/index.astro +++ b/docs/ensnode.io/src/components/molecules/upgrade-to-omnigraph-required-table/index.astro @@ -2,10 +2,10 @@ ---
+ class="not-content w-full h-fit flex flex-col justify-start items-center gap-0 border border-gray-200 rounded-xl overflow-hidden">

- Upgrade to Omnigraph required + Upgrade to the ENS Omnigraph required

diff --git a/docs/ensnode.io/src/content/docs/docs/integrate/ens-subgraph/index.mdx b/docs/ensnode.io/src/content/docs/docs/integrate/ens-subgraph/index.mdx index 0d916bcc2e..5a941c8662 100644 --- a/docs/ensnode.io/src/content/docs/docs/integrate/ens-subgraph/index.mdx +++ b/docs/ensnode.io/src/content/docs/docs/integrate/ens-subgraph/index.mdx @@ -12,9 +12,9 @@ import { LinkCard } from "@astrojs/starlight/components"; The ENS Subgraph **fundamentally fails as a source of ENS data as soon as ENSv2 launches.** diff --git a/docs/ensnode.io/src/content/docs/docs/integrate/why-ensnode/keep-ens-working.mdx b/docs/ensnode.io/src/content/docs/docs/integrate/why-ensnode/keep-ens-working.mdx index cb6f61fd40..f5da1a3a48 100644 --- a/docs/ensnode.io/src/content/docs/docs/integrate/why-ensnode/keep-ens-working.mdx +++ b/docs/ensnode.io/src/content/docs/docs/integrate/why-ensnode/keep-ens-working.mdx @@ -1,6 +1,6 @@ --- title: Keep ENS apps working 🚨 -description: A vast ecosystem of apps depends on the ENS Subgraph β€” ENSNode keeps them working through the ENSv2 transition. +description: A vast ecosystem of apps depends on the ENS Subgraph β€” all need to be upgraded to the ENS Omnigraph to keep working in ENSv2. --- import { LinkCard } from "@astrojs/starlight/components"; @@ -30,7 +30,7 @@ This volume sets the floor: it's the minimum scale at which any replacement must ## Applications dependent on the ENS Subgraph -The list below is a **partial** map of the projects and applications that depend on the ENS Subgraph for their functionality β€” directly, or indirectly through services like the ENS Metadata Service, ENSjs, or the Ethereum Comments Protocol. When ENSv2 launches, indexed ENS data must keep flowing to all of these, or they break. +The list below is a **partial** map of the projects and applications that depend on the ENS Subgraph for their functionality β€” directly, or indirectly. When ENSv2 launches, indexed ENS data must keep flowing to all of these, or they break. ### ENS Registrars @@ -163,7 +163,7 @@ The list below is a **partial** map of the projects and applications that depend Enscribe β€” ENS contract naming platform - + ENSjs β€” The official ENS JavaScript library. @@ -255,7 +255,7 @@ The list below is a **partial** map of the projects and applications that depend Stamp β€” by Snapshot Labs. - + ENS Metadata Flarecloud β€” by the EthId Foundation. @@ -263,40 +263,40 @@ The list below is a **partial** map of the projects and applications that depend ### Social Applications - + Ethereum Follow Protocol β€” onchain social graph protocol. - LinkChain (GitHub) + Next.ID - - Dapp Rank β€” by Joel Thorstensson. + + Web3.bio β€” builds on Next.ID. - Decentraland Builder (GitHub) β€” by Decentraland. + Eth.cd β€” builds on Next.ID, by Webhash. - - Decentraland Creator Hub (GitHub) β€” by Decentraland. + + ENS Market Bot β€” by the EthId Foundation. - Next.ID + LinkChain (GitHub) - - Web3.bio β€” builds on Next.ID. + + Dapp Rank β€” by Joel Thorstensson. - Eth.cd β€” builds on Next.ID, by Webhash. + Decentraland Builder (GitHub) β€” by Decentraland. - - ENS Market Bot β€” by the EthId Foundation. + + Decentraland Creator Hub (GitHub) β€” by Decentraland. @@ -330,7 +330,7 @@ Next, consider the key limitations of the legacy ENS Subgraph. From b80bf61a50a3b5a84d9c2790cb7546df6b9e0262 Mon Sep 17 00:00:00 2001 From: y3drk Date: Wed, 3 Jun 2026 08:55:28 +0200 Subject: [PATCH 7/7] Apply AI agents' suggestions, pt.3 --- .../src/components/atoms/NotENSv2ReadyBadge.tsx | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/docs/ensnode.io/src/components/atoms/NotENSv2ReadyBadge.tsx b/docs/ensnode.io/src/components/atoms/NotENSv2ReadyBadge.tsx index e2ed856281..4e574721d0 100644 --- a/docs/ensnode.io/src/components/atoms/NotENSv2ReadyBadge.tsx +++ b/docs/ensnode.io/src/components/atoms/NotENSv2ReadyBadge.tsx @@ -21,11 +21,15 @@ export const NotENSv2ReadyBadge = ({ transitionStages }: NotENSv2ReadyBadgeProps maxTooltipWidth={250} placement={isMobile ? "bottom" : "right"} trigger={ - + } >