anvilsign in

collin/anvil

BoardRenderedSource

Todo

  • pull mirror (maybe): a repo that virtually mirrors a GitHub repo
    • just displays it here — periodically fetched, read-only on the anvil side
  • pull requests (gix merge)
  • webhooks (mind the SSRF item in docs/untrusted-mode.md)

Edit files in the web UI

Edit a file in the browser and have anvil make a proper commit (author = the logged-in user, sensible message), written straight onto the branch with gix — no working tree. The new commit just advances the branch tip, so anyone who pushed earlier can fast-forward pull it.

  • start minimal: an "Edit" button on the blob page → textarea → commit; commits build the tree/commit objects via gix and move the ref (reject if the branch moved under us — no non-fast-forward clobber)
  • then richer editing: a real markdown editor with a live render preview (reuse render_markdown) before committing
  • and a structured way to add items to TODO.md from the web UI — an "add task" form that appends a - [ ] to the right section per the todo-md spec's round-trip rules, rather than hand-editing the raw file