mixmix/ssb-meta-feeds-learning

Improve README

Closed this issue · 1 comments

Things I think the example is currently missing:

  1. ok I have a subfeed, now what
    • show how to publish to that feed (ssb.db.publishAs)
    • show how to query that feed
    • how to query things encrypted things with the subfeed keys
  2. a diagram showing how subfeeds and meta feeds and the legacy main feed works

Past

graph TB

main

classDef default fill:#3a86ff;
Loading

each device has one main feed with all messages

Meta-feeds

graph TB

root:::root

root-->main
root-->myProfile
root-->DMs

classDef default fill:#3a86ff;
classDef root fill:#8338ec,stroke:#8338ec;
Loading

each device still has a (legacy) main feed but now declares a root metafeed which is only used to point to "subfeeds". this allows us to do things like split out all messages used to describe you into one tiny feed that is easy to quickly replicate, and DMs into another one (in case you don't want those encrypted messages till you know who I am)


Meta-feeds (advanced)

graph TB

root:::root

root-->main
root-->myProfile
root-->DMs

subgraph chessGraph[" "]
    chess:::root
    chess-->games
    chess-->chessDMs[DMs]
    chess-->commentary
    chess-->dev
end
root-->chess

classDef default fill:#3a86ff;
classDef root fill:#8338ec,stroke:#8338ec;
Loading

Subfeeds can also have describe other subfeeds! Here we our root subfeed announces a subfeed which is a root feed for several other subfeeds.

QUESTION - why would you ever want to do this? Should this be at the bottom of the README? Typically the root feed is going to be so small that you might as well put all subfeed announces in there right?
OHHH... unless...

Idea 1
one of these subfeeds is a "successor" feed.... as a way to work with epochs... and the subfeed tree just becomes your history tree (where not everyone may know the top of the tree, but they don't need to)

Idea 2
I noticed immediately that it's annoying to have to write feedpurpose like chess-DMs. I just want to be in a context say DMs... like DMs for the current root I'm hanging off. Could be general DMs, could be chess ones, have a look where I am in the tree