Skip to content

Introduce the ENSDb Interactive Playground to ENSNode Docs - #2321

Merged
tk-o merged 8 commits into
mainfrom
docs/ensdb-sql-viewer
Jun 22, 2026
Merged

Introduce the ENSDb Interactive Playground to ENSNode Docs#2321
tk-o merged 8 commits into
mainfrom
docs/ensdb-sql-viewer

Conversation

@tk-o

@tk-o tk-o commented Jun 19, 2026

Copy link
Copy Markdown
Member

Lite PR

Tip: Review docs on the ENSNode PR process

Summary


Why

  • We want to make the ENS Unigraph onboarding as easy as possible.

Testing

  • Only partially tested.
  • Full testing will occur once the read-only database is populated with the required ENSDb snapshot (ENSDb Alpha v1.15.2).

Notes for Reviewer (Optional)


Pre-Review Checklist (Blocking)

  • This PR does not introduce significant changes and is low-risk to review quickly.
  • Relevant changesets are included (or are not required)

Copilot AI review requested due to automatic review settings June 19, 2026 17:48
@changeset-bot

changeset-bot Bot commented Jun 19, 2026

Copy link
Copy Markdown

⚠️ No Changeset found

Latest commit: 6585099

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

@vercel

vercel Bot commented Jun 19, 2026

Copy link
Copy Markdown
Contributor

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

Project Deployment Actions Updated (UTC)
enskit-react-example.ensnode.io Ready Ready Preview, Comment Jun 22, 2026 11:20am
ensnode.io Ready Ready Preview, Comment Jun 22, 2026 11:20am
2 Skipped Deployments
Project Deployment Actions Updated (UTC)
admin.ensnode.io Skipped Skipped Jun 22, 2026 11:20am
ensrainbow.io Skipped Skipped Jun 22, 2026 11:20am

@coderabbitai

coderabbitai Bot commented Jun 19, 2026

Copy link
Copy Markdown
Contributor

Caution

Review failed

An error occurred during the review process. Please try again later.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch docs/ensdb-sql-viewer

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.

Copilot AI left a comment

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.

Pull request overview

Adds a new ENSNode docs page under Integrate → ENS Unigraph SQL to embed the ENSDb Interactive Playground (read-only snapshot) for exploring the ENS Unigraph via SQL, and updates the environment switch workflow to route Traefik traffic to the new ensdb-playground service.

Changes:

  • Added an “ENSDb Interactive Playground” docs page with an embedded iframe to ensdb-playground.ensnode.io.
  • Updated Integrate sidebar navigation to include the new playground page.
  • Updated docs frontmatter to dock the sidebar on the Unigraph schema reference page; updated the deploy switch workflow to switch the playground router.

Reviewed changes

Copilot reviewed 4 out of 4 changed files in this pull request and generated 2 comments.

File Description
docs/ensnode.io/src/content/docs/docs/integrate/unigraph/schema-reference.mdx Docks the sidebar for the long schema reference page.
docs/ensnode.io/src/content/docs/docs/integrate/unigraph/interactive-playground.mdx New docs page describing/embedding the ENSDb interactive playground.
docs/ensnode.io/config/integrations/starlight/sidebar-topics/integrate.ts Adds the new playground page to the Integrate sidebar navigation.
.github/workflows/deploy_switch_ensnode_environment.yml Switches Traefik router service mapping for the ENSDb playground during env promotion.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@coderabbitai coderabbitai Bot left a comment

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.

Actionable comments posted: 1

🤖 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
`@docs/ensnode.io/src/content/docs/docs/integrate/unigraph/interactive-playground.mdx`:
- Line 18: The ENSNode Schema link on this line uses an absolute localhost URL
(http://localhost:4321/docs/services/ensdb/concepts/database-schemas#ensnode-schema)
which will not work in production. Replace this absolute URL with a relative
link to match the pattern of the preceding ENSDb Writer Schema link, changing it
to start with `/docs/services/ensdb/concepts/database-schemas#ensnode-schema`
instead of the full localhost URL.
🪄 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: ASSERTIVE

Plan: Pro

Run ID: 8bec0cb2-6460-40fa-af0a-b04cfc121b75

📥 Commits

Reviewing files that changed from the base of the PR and between fb3f45f and c230031.

📒 Files selected for processing (4)
  • .github/workflows/deploy_switch_ensnode_environment.yml
  • docs/ensnode.io/config/integrations/starlight/sidebar-topics/integrate.ts
  • docs/ensnode.io/src/content/docs/docs/integrate/unigraph/interactive-playground.mdx
  • docs/ensnode.io/src/content/docs/docs/integrate/unigraph/schema-reference.mdx

@greptile-apps

greptile-apps Bot commented Jun 22, 2026

Copy link
Copy Markdown
Contributor

Greptile Summary

This PR adds a new "ENSDb Interactive Playground" documentation page under the Integrate → ENS Unigraph SQL section, embedding a read-only Drizzle Gateway iframe so users can explore the ENS Unigraph data model without deploying their own ENSNode instance. It also wires up the corresponding blue/green switch step in the deployment workflow and adds sidebarDocked: true to the Schema Reference page for visual consistency.

  • New docs page (interactive-playground.mdx): embeds https://ensdb-playground.ensnode.io/ via <iframe>, includes <LinkCard> for fullscreen access, and uses two :::caution callouts to clearly communicate the point-in-time snapshot limitation and Drizzle Gateway latency caveats.
  • Sidebar entry added between "Examples" and "Schema Reference" in integrate.ts to surface the new page in the left-hand navigation.
  • Deployment workflow extended with a single redis-cli SET call to switch the ensdb-playground-router service during environment promotion; no lb-header-* counterpart is needed for this service.

Confidence Score: 5/5

Safe to merge — changes are limited to a new documentation page, a sidebar entry, a one-line workflow addition, and a frontmatter flag.

All internal links in the new MDX page use relative paths (the previously flagged localhost URL is not present in the current diff). The sidebarDocked frontmatter property is validated by its use in existing pages and the content schema. The workflow addition is minimal and the team has already confirmed the intentional absence of an lb-header-* counterpart for this service.

No files require special attention.

Important Files Changed

Filename Overview
.github/workflows/deploy_switch_ensnode_environment.yml Adds a single redis-cli SET entry for the new ENSDb Playground router; no lb-header counterpart is needed for this service (confirmed by the team in a prior review thread).
docs/ensnode.io/config/integrations/starlight/sidebar-topics/integrate.ts Inserts the "Interactive Playground" sidebar entry at the correct position (between "Examples" and "Schema Reference") within the "ENS Unigraph SQL" section.
docs/ensnode.io/src/content/docs/docs/integrate/unigraph/interactive-playground.mdx New docs page embedding the ENSDb Interactive Playground via iframe; all internal links use relative paths, sidebarDocked is a valid custom property, and caution callouts clearly set user expectations about the point-in-time snapshot.
docs/ensnode.io/src/content/docs/docs/integrate/unigraph/schema-reference.mdx Only change is adding sidebarDocked: true to frontmatter — consistent with how the new interactive-playground page is configured.

Flowchart

%%{init: {'theme': 'neutral'}}%%
flowchart TD
    A[User visits ENSNode Docs] --> B[Integrate → ENS Unigraph SQL]
    B --> C[Interactive Playground page]
    C --> D{Choose view}
    D -->|Fullscreen| E[LinkCard → ensdb-playground.ensnode.io]
    D -->|Embedded| F[iframe → ensdb-playground.ensnode.io]
    F --> G[Drizzle Gateway]
    G --> H[(Read-only ENSDb Snapshot\nENSNode Alpha v1.16.0)]

    subgraph Blue/Green Deployment
        I[deploy_switch_ensnode_environment.yml]
        I -->|redis-cli SET| J[ensdb-playground-router\n→ TARGET_ENVIRONMENT-ensdb-playground]
    end
Loading
%%{init: {'theme': 'base', 'themeVariables': {"darkMode": true, "background": "#0d1117", "primaryColor": "#21262d", "primaryTextColor": "#e6edf3", "primaryBorderColor": "#8b949e", "lineColor": "#8b949e", "textColor": "#e6edf3", "edgeLabelBackground": "#161b22", "actorBkg": "#21262d", "actorBorder": "#8b949e", "actorTextColor": "#e6edf3", "actorLineColor": "#8b949e", "signalColor": "#8b949e", "signalTextColor": "#e6edf3", "noteBkgColor": "#373320", "noteBorderColor": "#d4a72c", "noteTextColor": "#f0e6c0", "labelBoxBkgColor": "#21262d", "labelBoxBorderColor": "#8b949e", "labelTextColor": "#e6edf3", "loopTextColor": "#e6edf3", "activationBkgColor": "#30363d", "activationBorderColor": "#8b949e"}}}%%
flowchart TD
    A[User visits ENSNode Docs] --> B[Integrate → ENS Unigraph SQL]
    B --> C[Interactive Playground page]
    C --> D{Choose view}
    D -->|Fullscreen| E[LinkCard → ensdb-playground.ensnode.io]
    D -->|Embedded| F[iframe → ensdb-playground.ensnode.io]
    F --> G[Drizzle Gateway]
    G --> H[(Read-only ENSDb Snapshot\nENSNode Alpha v1.16.0)]

    subgraph Blue/Green Deployment
        I[deploy_switch_ensnode_environment.yml]
        I -->|redis-cli SET| J[ensdb-playground-router\n→ TARGET_ENVIRONMENT-ensdb-playground]
    end
Loading

Reviews (5): Last reviewed commit: "Apply PR feedback" | Re-trigger Greptile

Comment thread .github/workflows/deploy_switch_ensnode_environment.yml

Copilot AI left a comment

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.

Pull request overview

Copilot reviewed 4 out of 4 changed files in this pull request and generated 2 comments.

@coderabbitai coderabbitai Bot left a comment

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.

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (1)
docs/ensnode.io/src/content/docs/docs/integrate/unigraph/interactive-playground.mdx (1)

18-18: ⚠️ Potential issue | 🔴 Critical | ⚡ Quick win

Fix absolute localhost URL that breaks in production.

Line 18 contains an absolute URL to http://localhost:4321/... which will send users to their own localhost in production instead of the intended documentation path. The preceding link to "ENSDb Writer Schema" correctly uses a relative /docs/... path; apply the same pattern here.

🔗 Proposed fix
-2. Browse tables in the [ENSDb Writer Schema](/docs/services/ensdb/concepts/database-schemas#ensdb-writer-schema) (named as `alpha` in this example ENSDb instance) and the [ENSNode Schema](http://localhost:4321/docs/services/ensdb/concepts/database-schemas#ensnode-schema) (always named as `ensnode`).
+2. Browse tables in the [ENSDb Writer Schema](/docs/services/ensdb/concepts/database-schemas#ensdb-writer-schema) (named as `alpha` in this example ENSDb instance) and the [ENSNode Schema](/docs/services/ensdb/concepts/database-schemas#ensnode-schema) (always named as `ensnode`).
🤖 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
`@docs/ensnode.io/src/content/docs/docs/integrate/unigraph/interactive-playground.mdx`
at line 18, The absolute localhost URL in the ENSNode Schema link uses
http://localhost:4321/docs/services/ensdb/concepts/database-schemas#ensnode-schema
which will break in production. Replace this absolute localhost URL with a
relative path using the same format as the preceding ENSDb Writer Schema link,
converting it to /docs/services/ensdb/concepts/database-schemas#ensnode-schema
so the link works consistently across all environments.
🤖 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.

Outside diff comments:
In
`@docs/ensnode.io/src/content/docs/docs/integrate/unigraph/interactive-playground.mdx`:
- Line 18: The absolute localhost URL in the ENSNode Schema link uses
http://localhost:4321/docs/services/ensdb/concepts/database-schemas#ensnode-schema
which will break in production. Replace this absolute localhost URL with a
relative path using the same format as the preceding ENSDb Writer Schema link,
converting it to /docs/services/ensdb/concepts/database-schemas#ensnode-schema
so the link works consistently across all environments.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: ASSERTIVE

Plan: Pro

Run ID: 5df9a5f8-3f76-4526-96cd-e3e2d6f6161b

📥 Commits

Reviewing files that changed from the base of the PR and between c230031 and e905db0.

📒 Files selected for processing (3)
  • docs/ensnode.io/config/integrations/starlight/sidebar-topics/integrate.ts
  • docs/ensnode.io/src/content/docs/docs/integrate/unigraph/interactive-playground.mdx
  • docs/ensnode.io/src/content/docs/docs/integrate/unigraph/schema-reference.mdx

Copilot AI left a comment

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.

Pull request overview

Copilot reviewed 4 out of 4 changed files in this pull request and generated 1 comment.

@lightwalker-eth lightwalker-eth left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

@tk-o Looks nice 👍 Shared a few small suggestions. Please take the lead to merge when ready


:::

<iframe title="ENSDb Interactive Playground" loading="lazy" src="https://ensdb-playground.ensnode.io/" width="100%" height="100%" style="min-height: 800px;" />

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Suggest to also add a "card" to open this interactive playground in a fullscreen view. This would open to https://ensdb-playground.ensnode.io/ in a new tab without any iframe.

Co-authored-by: lightwalker.eth <126201998+lightwalker-eth@users.noreply.github.com>

@coderabbitai coderabbitai Bot left a comment

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.

Actionable comments posted: 1

🤖 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
`@docs/ensnode.io/src/content/docs/docs/integrate/unigraph/interactive-playground.mdx`:
- Line 32: The current implementation only includes an embedded iframe with a
constrained minimum height of 800px, which limits the user experience for
exploratory SQL sessions. Add a card component (or call-to-action element)
alongside or as an alternative to the existing iframe that links to
https://ensdb-playground.ensnode.io/ and opens in a new tab, allowing users to
access the playground in fullscreen without the iframe height restrictions. This
can be implemented as an additional MDX component or card element in the
interactive-playground.mdx file.
🪄 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: ASSERTIVE

Plan: Pro

Run ID: de0f3b00-2b98-4440-9aa0-7e59f98a9d43

📥 Commits

Reviewing files that changed from the base of the PR and between e905db0 and 2ad8436.

📒 Files selected for processing (1)
  • docs/ensnode.io/src/content/docs/docs/integrate/unigraph/interactive-playground.mdx

Copilot AI left a comment

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.

Pull request overview

Copilot reviewed 4 out of 4 changed files in this pull request and generated 3 comments.

Copilot AI left a comment

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.

Pull request overview

Copilot reviewed 4 out of 4 changed files in this pull request and generated 1 comment.

@tk-o
tk-o merged commit 79f474f into main Jun 22, 2026
20 checks passed
@tk-o
tk-o deleted the docs/ensdb-sql-viewer branch June 22, 2026 11:29
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.

3 participants