Content Addressable Note-taking system¶
This is a project I'll be working on. Called CAN for want of a better name.
Based on the question: Would it be possible to use some of the concepts from Unison to build a repository of notes? An initial dump of ideas:
- notes are named with a hash of the content
- note collections are append-only
- updating a note makes a new note, links to old one and updates links in notes which refer to old note.
- friendly namespaces are assigned to notes and can be trivially reassigned
- semantic links between notes, possibly with arbitrary metadata
- use friendly namespaces to inter-refer between notes
- full ability to find, follow backlinks/link-chains trivially
- transclusion-style links to build larger notes/documents
- ability to export/render in multiple, pluggable formats
- use namespaces to render limited subsets
- render out HTML to build sites
- store notes semantically as AST-style files
- semantic note refactoring? split / merge / etc
- shared / distributed note collections for projects / companies / friends
- '> pull
docs' - 'sam updated these notes:'
- '> pull