livepeer / livepeer/explorer

Make the Livepeer Explorer AI/agent-readable

Open
#714 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
TypeScript
Stars
11
Forks
26
Avg merge
11h 58m
Merged PRs (30d)
16

Description

## Goal

AI agents and crawlers can read the explorer's authoritative data — governance outcomes, treasury proposals, and orchestrator / delegator / gateway stats — directly from each page without executing JS, and can correctly identify what the page represents.

## Outcome

- `curl`ing any key page (no JS) returns the entity/outcome plus key facts in the HTML, meta tags, and JSON-LD.

## What's blocking it today

- **Governance** (`/voting`, `/voting/[poll]`) and **treasury** (`/treasury`, `/treasury/[proposal]`) are client-only. Initial HTML is a spinner; status/tally are computed in-browser, so an agent reading the explorer sees nothing usable.
- **Orchestrator / delegator / gateway** pages are server-rendered (data is in the HTML) but have generic or missing titles, no per-entity description, no Open Graph, and no structured data — agents can read the numbers but can't identify or attribute the page.
- No JSON-LD, Open Graph, or `llms.txt` anywhere; metadata is a single app-wide title + description.

## Scope (child work)

- Governance pages → SSR/ISR + per-poll meta + JSON-LD; clearly separate the on-chain outcome from the LIP document lifecycle status.
- Treasury pages → SSR/ISR + per-proposal meta + JSON-LD.
- Orchestrator / delegator / gateway pages → per-entity title + description, Open Graph, JSON-LD (these already SSR, so metadata-only).
- Cross-cutting → machine-readable JSON endpoints, `llms.txt`, sitemap / Open Graph defaults.

## Related

@ECWireless surfaced this need in the [Delegator UX research](https://github.com/livepeer/explorer/issues/691#issuecomment-4660671710), which lays out how AI agents would realistically discover Livepeer staking and proposes agent-readable `/api/agent/...` endpoints.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by curling /voting, /voting/[poll], /treasury, /treasury/[proposal], and the orchestrator, delegator, and gateway pages without JavaScript to inspect their current HTML. Review the existing page entry points and metadata handling before splitting the work across SSR/ISR, per-entity metadata, JSON-LD, and agent-readable endpoints. Done means key pages expose authoritative facts and identity in HTML, meta tags, and JSON-LD, with the requested cross-cutting endpoints and llms.txt.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript
Domain
api, web-dev
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
42/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.