Related to #67, scoped to page rendering only. Right now GET /some/page returns the SPA shell <div id="root"></div>, and content loads via a JS fetch to the API afterward. That works well for browsers, but leaves search crawlers, link previews, LLM agents, and curl looking at an empty page.
Proposal: have the existing page route render the page's Markdown to HTML server-side and include it directly in the response body, alongside the current shell. The SPA boots and takes over exactly as it does today.
Along with it:
- sitemap.xml generated from tree.json
- per-page <title> / in the initial HTML
- robots.txt check for page paths
- canonical URL + OpenGraph tags
I'm happy to implement that.
Related to #67, scoped to page rendering only. Right now
GET /some/pagereturns the SPA shell<div id="root"></div>, and content loads via a JS fetch to the API afterward. That works well for browsers, but leaves search crawlers, link previews, LLM agents, and curl looking at an empty page.Proposal: have the existing page route render the page's Markdown to HTML server-side and include it directly in the response body, alongside the current shell. The SPA boots and takes over exactly as it does today.
Along with it:
I'm happy to implement that.