Skip to content

Wayfinder: notes on boop — signed, publishable, verifiable #227

Description

@brianorwhatever

Destination

boop grows a notes surface where a note is a list — same lists table, same assetDid/listEnvelopes identity, same publish path — carrying prose instead of items. Cloud-native: notes live in Convex, not as files on disk.

Shipped means: a stranger lands on a published note and can confirm who wrote it and that it has not been altered since. Provenance is the product, not the editor.

Notes

Domain: boop — Convex (realtime DB + HTTP actions), React 19 + Vite + TS + Tailwind v4, Originals SDK for DIDs (did:webvh, did:cel) and VCs. Relevant existing machinery: lists (assetDid, vcProof), listEnvelopes (signed CEL event log), items, publications / sites / siteDidLogEntries (signed publishing), subscriptions + list cap, presence / comments / activities.

Skills every session should consult: /grilling and /domain-modeling by default; /prototype for the prototype tickets; /research for research tickets.

Standing preferences for this effort:

  • Plan, don't do. These tickets resolve decisions; the build is a separate handoff.
  • A note is a list. Reuse the primitive — do not introduce a parallel data model. If a ticket's answer requires a new primitive, that's a signal to re-examine the destination, not to quietly add one.
  • Provenance is the wedge. When a decision trades editor polish against verifiability, verifiability wins.
  • This audience is not Obsidian's local-first users. They were consciously given up when cloud-native was chosen; do not re-litigate it per ticket.

Decisions so far

None yet.

Not yet specified

  • Editor choice, and whether markdown is the storage format. Hangs on where prose lives.
  • Concurrent / multiplayer prose editing. presence and comments exist for lists, but concurrent prose is a different problem than concurrent item rows. Revisit once sealing granularity is settled.
  • Import from an existing Obsidian vault. Whether a migration path exists at all, and what it costs, once the note shape is known.
  • Mobile note-writing. A Capacitor app exists; unknown whether notes need it at ship.
  • Discovery of published notes. SEO, indexing, whether published notes are listed anywhere.

Out of scope

  • Local files / local-first sync. Cloud-native was chosen deliberately; notes live in Convex.
  • Notes as a separate primitive — own table, own DID lifecycle, own editor stack.
  • Graph view, backlinks, wiki-links. This is where "Obsidian replacement" becomes literally true and the surface becomes its own product.
  • Plugin ecosystem.
  • Winning Obsidian's local-first users. Different audience, consciously not pursued.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions