root ee582640ea feat(ui): page editor + reference detail
Page view: header + split-pane markdown editor (textarea on left,
marked + DOMPurify rendered preview on right) + backlinks card pulling
/api/pages/:id/backlinks. Save calls PATCH /api/pages/:id with body_md
and surfaces the resulting updated_at as a timestamp.

Reference detail: media block (image preview / YouTube embed via
youtube-nocookie / link fallback), summary card, metadata table, tags
card with attach/detach (creates the tag idempotently then attaches),
linked-from card from /api/links/to/ref/:id.

marked + DOMPurify vendored to public/vendor as ESM. The markdown
editor uses the explicit html: opt-in on dom.js's preview element
only — all other text comes from textContent.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-06-01 02:19:23 +10:00
2026-06-01 02:04:57 +10:00
2026-05-31 01:22:10 +10:00
2026-05-31 01:22:10 +10:00
2026-05-31 01:22:10 +10:00

Void 2.0

Homelab orchestrator + canonical knowledge store. Cradle-themed. Successor to Void 1.x (CT 301). Spec at /project/docs/superpowers/specs/2026-05-31-void-v2-design.md.

Layout

  • void-server (this repo) — Node API, MCP, UI, cron, agent runtime
  • void-workers — Python ingest workers (separate repo, later plan)

Quick start (dev)

  1. Provision void2-db LXC (see deploy/README.md)
  2. Install Postgres + pgvector on void2-db
  3. npm install
  4. cp .env.example .env and edit
  5. npm run migrate
  6. npm start
  7. curl -H "Authorization: Bearer $OWNER_TOKEN" http://localhost:3000/health
Description
No description provided
Readme 2.6 MiB
Languages
JavaScript 87.5%
CSS 6.4%
Python 5.2%
Shell 0.7%
HTML 0.2%