Let’s look at this from a different direction:

As a core coder your mission is to build pipes that carry data flows. Then your mission is to build 5 function connectors on the ends of the pipes. Then to build holding tanks, databases, that store the content of the flow.

In each “holding tank” the data soup has to be in sync with other holding tanks that have a pipe connecting them – this syncing is moderated by the switching of the connectors on the end of each pipe.

This is the core coding project.

Where are we at:

* The pipes are activertypub/RSS and perhaps odata so this part is already defined.

* the holding tank is any database we care to use.

* the end connector is the part we have to implement

* the sync function is something that needs thinking about – it can come from the feed speck/the database function or…

To sum up we have the pipes, the holding tank, we need to build the 5 function end connector, and we have to think about the sync function.