Skip to content

How we work

Lightweight process for a solo maintainer: roadmap → tasks → code → changelog. Scope and decisions for the current chunk of work live in chat (or your own notes), not in a formal spec file.

Docs site mirror: Roadmap, Task board, Changelog.

Living files

FileRole
/ROADMAP.mdMilestones 0.2 → 1.0 — themes, scope, exit criteria.
/TASKS.mdConcrete work (task-001, …) with status symbols.
/CHANGELOG.mdWhat shipped. Keep Unreleased updated as you land work.

/guide/, /api/, and /design/ are steady-state docs — they describe the SDK as it exists today.

Loop

  1. Pick the next task from Task board (or a milestone chunk from Roadmap).
  2. Align in chat — goal, in/out scope, and any open decisions. No /ITERATION.md file required.
  3. Implement on main (one focus at a time). Prefer tests for public behaviour; keep diffs scoped to the task.
  4. Document — any public API or behaviour change updates the matching /guide/, /api/, or /design/ page in the same change set.
  5. Changelog — add a bullet under CHANGELOG.mdUnreleased (group by Added / Changed / Fixed / Tests as needed).
  6. Task board — set the task to [x] when done.
  7. Release (when ready) — move Unreleased to ## [x.y.z], bump packages/core/package.json, tag, pnpm --filter grist-widget-sdk publish.

Quality bar (before you call a task done)

bash
pnpm --filter grist-widget-sdk test
pnpm --filter grist-widget-sdk exec tsc --noEmit
pnpm --filter grist-widget-sdk build
pnpm --filter docs build   # when docs changed

Agent guide

Repo layout, commands, and anti-patterns: Start here.

Design rationale

Principles, replica format, open questions: /design/principles.

Released under the ISC License.