Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 8 additions & 1 deletion docs/ensnode.io/astro.config.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,14 @@ export default defineConfig({
"/ensnode": "/docs/integrate",
"/ensnode/deploying/railway": "/docs/services/ensrainbow/deploying/railway",
"/ensnode/concepts/what-is-ensnode": "/docs/reference/what-is-ensnode",
"/ensnode/concepts/what-is-the-ens-subgraph": "/docs/reference/what-is-the-ens-subgraph",
"/ensnode/concepts/what-is-the-ens-subgraph":
"/docs/reference/subgraph-legacy/what-is-the-ens-subgraph",
Comment thread
tk-o marked this conversation as resolved.
Comment thread
vercel[bot] marked this conversation as resolved.
Comment thread
vercel[bot] marked this conversation as resolved.
"/docs/reference/what-is-the-ens-subgraph":
"/docs/reference/subgraph-legacy/what-is-the-ens-subgraph",
"/docs/reference/querying-best-practices":
"/docs/reference/subgraph-legacy/querying-best-practices",
"/docs/reference/subgraph-compatibility-tooling":
"/docs/reference/subgraph-legacy/subgraph-compatibility-tooling",
"/ensadmin": "/docs/services/ensadmin",
"/ensapi": "/docs/services/ensapi",
"/ensdb": "/docs/services/ensdb",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,30 +19,14 @@ export const referenceSidebarTopic = {
label: "What is ENSNode?",
link: "/docs/reference/what-is-ensnode",
},
{
label: "What is the ENS Subgraph?",
link: "/docs/reference/what-is-the-ens-subgraph",
},
{
label: "REST API",
link: "/docs/reference/rest-api",
},
{
label: "Querying Best Practices",
link: "/docs/reference/querying-best-practices",
},
{
label: "ENSNode V2 Notes",
link: "/docs/reference/ensnode-v2-notes",
},
{
label: "Subgraph Compatibility",
link: "/docs/reference/subgraph-compatibility-tooling",
},
{
label: "Indexing ENS-Compatible Names",
link: "/docs/reference/indexing-ens-compatible-onchain-names",
},
{
label: "Mainnet Subnames of Subregistries",
link: "/docs/reference/mainnet-registered-subnames-of-subregistries",
Expand All @@ -51,6 +35,22 @@ export const referenceSidebarTopic = {
label: "Subgraph API (Legacy)",
collapsed: true,
items: [
{
label: "What is the ENS Subgraph?",
link: "/docs/reference/subgraph-legacy/what-is-the-ens-subgraph",
},
{
label: "Subgraph API",
link: "/docs/reference/subgraph-legacy/subgraph-api",
},
{
label: "Querying Best Practices",
link: "/docs/reference/subgraph-legacy/querying-best-practices",
},
{
label: "Subgraph Compatibility Tooling",
link: "/docs/reference/subgraph-legacy/subgraph-compatibility-tooling",
},
{
label: "With ENSjs",
link: "/docs/reference/subgraph-legacy/with-ensjs",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ import { LinkCard, Aside } from "@astrojs/starlight/components";
Fully supporting ENSv1 requires two separate systems working in parallel:

1. **On-chain resolution** — RPC calls with CCIP-read support (e.g. via [viem](/docs/reference/subgraph-legacy/with-viem) or [ensjs](/docs/reference/subgraph-legacy/with-ensjs)) to resolve names to addresses and records at the current state of the chain.
2. **Indexed data** — the [ENS Subgraph](/docs/reference/what-is-the-ens-subgraph) for historical data, registration info, reverse records, and browsing names owned by an address.
2. **Indexed data** — the [ENS Subgraph](/docs/reference/subgraph-legacy/what-is-the-ens-subgraph) for historical data, registration info, reverse records, and browsing names owned by an address.

Neither system alone is complete.
The Subgraph gives you queryable indexed history but can lag behind the chain and has no CCIP-read support.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,14 +13,36 @@ NameHash Labs provides freely available hosted instances for ENS developers look

These instances are provided free of charge with no API key required, have no rate limiting, and are maintained and monitored by the NameHash Labs team.

:::caution[No Uptime / Performance Guarantees]
These hosted instances are provided free of charge to the ENS community, and while we strive for strong uptime and performance, neither of these can be guaranteed. By using these instances you accept the possibility of downtime, degraded performance, or other unforeseen events. If you'd like to run ENSNode in production, consider [hosting your own ENSNode instance](/docs/self-host).
:::
### Available instance configurations

## Available ENSNode Instances
Each ENSNode hosted instance is configured for a specific ENS namespace and activated ENSNode plugins. The ENS namespace is the source of truth for the data indexed by the instance, and the activated ENSNode plugins determine the specific data model produced by indexing and available for querying.

Each ENS namespace is associated with a particular ENS root registry deployment, which may or may not have completed the transition from ENSv1 to ENSv2. Currently, ENSNode supports the following ENS namespaces:
- `mainnet` (ENSv1)
- `sepolia` (ENSv1)
- `sepolia-v2` (An independent deployment of ENS to Sepolia that is already upgraded to ENSv2)
- `ens-test-env` (A deployment of ENSv2 to a local Anvil chain for development and testing. For details see https://github.com/ensdomains/ens-test-env and https://github.com/ensdomains/contracts-v2)

More details about ENS namespaces can be found inside [ENSNode's datasources package](https://github.com/namehash/ensnode/tree/main/packages/datasources).

### ENSv2 instances

These instances are associated with an ENS namespace that has upgraded to ENSv2 and demonstrate the latest ENSv2 support in ENSNode.

#### ENSNode 'v2 Sepolia'

<HostedEnsNodeInstances
instanceURL="https://api.v2-sepolia.ensnode.io"
connectWithENSAdminURL="https://admin.ensnode.io/connection?connection=https%3A%2F%2Fapi.v2-sepolia.ensnode.io"
namespace="sepolia-v2"
plugins="ensv2, protocol-acceleration"
purpose="Demonstration of ENSNode's support for an ENS namespace that has already transitioned to ENSv2."
/>

## ENSv1 Instances

These instances are associated with an ENS namespace that has **NOT** upgraded to ENSv2 yet and are still operating under ENSv1. These demonstrate how the ENS Omnigraph API, enssdk, enskit, and the full stack of ENSNode services provide support to developers to become ENSv2 ready even before ENSv2 launches.

The key differences between these hosted deployments is the ENS deployment being indexed (mainnet vs a testnet) and the list of ENSNode plugins that are activated. See the table below for details.
Main difference from client perspective is chain being indexed and list of plugins being handled. Here is the table listing differences between those.

### Alpha-style Deployments

Expand All @@ -32,8 +54,8 @@ These ENSNode instances focus on pushing the boundaries of what's possible with
instanceURL="https://api.alpha.ensnode.io"
connectWithENSAdminURL="https://admin.ensnode.io/connection?connection=https%3A%2F%2Fapi.alpha.ensnode.io"
namespace="mainnet"
plugins="subgraph, basenames, lineanames, threedns, protocol-acceleration, registrars"
purpose="Demonstration of ENSNode's multichain ENS indexing capability for the ENS namespace rooted on Mainnet. Provides a superset of the data indexed by the ENS Subgraph. Offers a preview of ENS Protocol Acceleration."
plugins="subgraph, basenames, lineanames, threedns, ensv2, protocol-acceleration, registrars, tokenscope"
purpose="Demonstration of ENSNode's multichain ENS indexing capability for an ENS namespace (mainnet) that is still operating ENSv1. Experience how the ENS Omnigraph API, enssdk, enskit, and the full stack of ENSNode services provide support to developers to become ENSv2 ready even before ENSv2 launches. Provides a superset of the data indexed by the ENS Subgraph. Offers a preview of ENS Protocol Acceleration."
/>

#### ENSNode 'Alpha-Sepolia'
Expand All @@ -42,8 +64,8 @@ These ENSNode instances focus on pushing the boundaries of what's possible with
instanceURL="https://api.alpha-sepolia.ensnode.io"
connectWithENSAdminURL="https://admin.ensnode.io/connection?connection=https%3A%2F%2Fapi.alpha-sepolia.ensnode.io"
namespace="sepolia"
plugins="subgraph, basenames, lineanames, protocol-acceleration, registrars"
purpose="Demonstration of ENSNode's multichain ENS indexing capability for the ENS namespace rooted on Sepolia. Provides a superset of the data indexed by the ENS Subgraph. Offers a preview of ENS Protocol Acceleration."
plugins="subgraph, basenames, lineanames, registrars, ensv2, protocol-acceleration"
purpose="Demonstration of ENSNode's multichain ENS indexing capability for an ENS namespace (sepolia) that is still operating ENSv1. Experience how the ENS Omnigraph API, enssdk, enskit, and the full stack of ENSNode services provide support to developers to become ENSv2 ready even before ENSv2 launches. Provides a superset of the data indexed by the ENS Subgraph. Offers a preview of ENS Protocol Acceleration."
/>

### Subgraph-style Deployments
Expand All @@ -70,20 +92,6 @@ These ENSNode instances focus on maximizing backwards compatibility with the ENS
purpose="Demonstration of ENSNode's backwards compatibility with the ENS Subgraph. Provides 1:1 Subgraph compatible data on Sepolia."
/>

### ENS V2 Deployments

These instances demonstrate the latest ENSv2 support in ENSNode.

#### ENSNode 'v2 Sepolia'

<HostedEnsNodeInstances
instanceURL="https://api.v2-sepolia.ensnode.io"
connectWithENSAdminURL="https://admin.ensnode.io/connection?connection=https%3A%2F%2Fapi.v2-sepolia.ensnode.io"
namespace="sepolia"
plugins="ensv2, protocol-acceleration"
purpose="Preview of ENSNode's ENSv2 support on the Sepolia deployment of ENSv2."
/>

## Endpoints

For more details on how to use these instances, refer to the [ENSNode Quickstart](/docs/integrate).
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,5 @@ Go deeper into mastery of ENSNode, including terminology and becoming an active
<LinkCard title="Terminology" href="/docs/reference/terminology" description="Terminology for ENS development used across these docs." />
<LinkCard title="Hosted ENSNode instances" href="/docs/integrate/hosted-instances" description="Public NameHash-hosted URLs (alpha, mainnet, Sepolia, ENSv2 previews)." />
<LinkCard title="REST API" href="/docs/reference/rest-api" description="ENSNode has additional APIs beyond the ENS Omnigraph and Subgraph. Explore additional OpenAPI-backed HTTP APIs." />
<LinkCard title="Subgraph compatibility" href="/docs/reference/subgraph-compatibility-tooling" description="Tooling that guarantees the full backwards-compatibility of our (now deprecated!) ENS Subgraph API implementation." />
<LinkCard title="Contributing" href="/docs/reference/contributing" description="Learn how to contribute to the development of ENSNode and related projects." />
</CardGrid>

This file was deleted.

Loading
Loading