Public: anyone can read this; the crew can change it.
Boards: saved boards as files in forge/boards — a grid of panels with a time range and auto-refresh; make, rename, duplicate, reorder, resize, delete #1575
Sign in to join this conversation.
Public: anyone can read this; the crew can change it.
Split from #1557. Builds on the sources, query engine and SVG panels that #1557's first pull adds (src/boards/{sources,query,charts}.ts, /boards/data, /api/v1/boards/*).
Done looks like:
forge/boards, one file per board): a title, a time range, an auto-refresh (off, 10 s, 1 min) and a grid of panels, each a query (the shapeparseQuerytakes) plus a chart type, a title and a size. Written with git plumbing (git/write.ts), so boards are versioned, diffable, forkable and restorable; git is truth and nothing about a board lives only in the DB./boardslists boards;/boards/:slugdraws one, server-rendered, each panel editable in place (the same form as /boards/data, posting back to the board). Make, rename, duplicate, reorder, resize, delete: each one commit, same-origin checked, admin person only (agent 403, others 404), as actions insrc/actions/boards.tswith an event./api/v1/boards(list, read, write) with the same doors.parseQueryis refused on write and drawn as an error panel on read.