/** * rNotes demo page — server-rendered HTML body. * * Embeds the full component for * real interactivity (notebook browsing, note editing, search, tags) * plus showcase sections explaining the rNotes vision. */ const FEATURES = [ { icon: "\u{1F3A4}", title: "Live Transcription", desc: "Record and transcribe in real time. Stream audio via WebSocket or transcribe offline with Parakeet.js.", }, { icon: "\u270F\uFE0F", title: "Rich Editing", desc: "Headings, lists, code blocks, highlights, images, and file attachments in every note.", }, { icon: "\u{1F4D3}", title: "Notebooks", desc: "Organize notes into notebooks with sections. Nest as deep as you need for any project structure.", }, { icon: "\u{1F3F7}\uFE0F", title: "Flexible Tags", desc: "Cross-cutting tags let you find notes across all notebooks instantly. Filter and search by any combination.", }, ]; const INTEGRATIONS = [ { icon: "\u{1F4C5}", name: "rCal", desc: "Link notes to calendar events. Meeting agendas, daily journals, and retrospective logs." }, { icon: "\u{1F5FA}", name: "rMaps", desc: "Pin location-aware notes to places on the map. Field notes, venue reviews, site reports." }, { icon: "\u{1F465}", name: "rNetwork", desc: "Collaborate on notes across your network with real-time Automerge sync." }, { icon: "\u{1F3AC}", name: "rTube", desc: "Attach meeting notes, transcripts, and timestamps to video recordings." }, { icon: "\u{1F5F3}", name: "rVote", desc: "Link governance proposals to supporting research notes and discussion threads." }, { icon: "\u2615\uFE0F", name: "rSpace", desc: "Pin any note to the collaborative canvas. Each space has its own knowledge base." }, ]; export function renderDemo(): string { return `
Collaborative Knowledge Base

rNotes Demo

Notebooks with rich-text notes, voice transcription, and real-time collaboration

\u{1F3A4} Transcription | \u270F\uFE0F Rich Editing | \u{1F4D3} Notebooks | \u{1F3F7}\uFE0F Tags & Search
${FEATURES.map( (f) => `
${f.icon}

${f.title}

${f.desc}

`, ).join("")}

r* Ecosystem Integrations

${INTEGRATIONS.map( (i) => `
${i.icon}

${i.name}

${i.desc}

`, ).join("")}

Ready to capture everything?

rNotes gives your team a shared knowledge base with rich editing, flexible organization, and deep integration with the r* ecosystem — all on a collaborative canvas.

Start Taking Notes
`; }