Skip to content

a docs page, so the Docs group in the nav finally has one - #2758

Merged
Flotapponnier merged 1 commit into
mainfrom
cherry/docs-page
Oct 1, 2026
Merged

Flotapponnier merged 1 commit into
mainfrom
cherry/docs-page

Conversation

@Flotapponnier

Copy link
Copy Markdown
Collaborator

Cherry-pick of ecc3396a from dev (#2757). This commit only — dev carries 16 others that stay there.

/docs indexes every machine-readable surface: the MCP server and its four tools, the eleven REST endpoints, the paths that answer Accept: text/markdown, the agent files, the four citation formats, badges, feeds, and the same data on Hugging Face. It does not repeat /mcp, which is the install flow.

Nothing was written from memory. The tools come from tools/list on the live server, the endpoints from /api/openapi.json (each probed, including /api/og/{slug} which is served through a rewrite), the formats verified for status and MIME (bibtex answers 400, bib is correct), the Markdown paths checked individually so the page can say /rpc and /chains/{slug} are not among them, the rate limit read off rateLimit(key, 60, 60), and both Zenodo DOIs distinguished using Zenodo's own API, which reports …312 carrying conceptdoi: …311.

All 59 URLs the rendered page shows were then probed. No broken links.

Verified after the pick: tsc --noEmit clean, eslint clean on the new file, diff against origin/main is exactly the 3 files.

* a docs page, so the Docs group in the nav finally has one

The left rail had a group labelled Docs holding Methodology, API & MCP,
Contribute, About and Contact. There was no page that said what this
site exposes to a machine, so the answer was spread across /mcp, the
OpenAPI document, llms.txt and whatever a reader happened to find.

/docs is that index. The MCP server and its four tools, the eleven REST
endpoints the OpenAPI document declares, the paths that answer
Accept: text/markdown, the files written for agents, the four citation
formats, the badges, the feeds, and the same data on Hugging Face.

It does not repeat /mcp. That page is the install flow for Claude
Desktop, Cursor and VS Code with the deeplinks and the JSON blocks; this
one says what the server is and links there.

Nothing here was written from memory. Every endpoint, transport, format
and path was probed against production while the page was written:

  - the four tools come from tools/list on the live server, not from the
    route source
  - the eleven endpoints are the ones /api/openapi.json declares, each
    probed, including /api/og/{slug}, which is served through a rewrite
    and so does not appear as a route file
  - the citation formats are bib, ris, apa and txt. Not bibtex, which
    answers 400 with the allowed list
  - Markdown is served for /benchmarks/{slug}, /products/{slug}, /perps,
    /rwa and /capital, and the page says so rather than implying every
    page, because /rpc and /chains/{slug} answer HTML whatever the Accept
    header asks for
  - the MCP rate limit is rateLimit(key, 60, 60), which is 60 a minute
  - both Zenodo DOIs are named and distinguished, because the record at
    ...312 declares ...311 as its conceptdoi and the two are not
    interchangeable: the concept DOI follows the newest version, the
    version DOI is the one that keeps a result reproducible

The two facts most likely to rot say where the live truth is: tools/list
for the tools, and the OpenAPI document for the endpoints, which is
generated from the routes rather than hand-written.

* docs: /api/citable goes through Link, like the footer already does

next/no-html-link-for-pages resolves /api/citable/ as a known route
because /api/citable/[date] exists next to it, so the bare <a> was an
error rather than a warning. The footer has used <Link> for the /api
surfaces since it was written; this matches it.
@Flotapponnier
Flotapponnier merged commit 5dc8afe into main Oct 1, 2026
2 checks passed
@Flotapponnier
Flotapponnier deleted the cherry/docs-page branch October 1, 2026 15:17
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