Betula sites want to be federated and shared, at least they pretend to. In this note I describe how Betulae can be included in [[Agora]], given no additional federation capabilities are added to Agora^^1^^.
++This document is outdated. See [[https://git.agor.ai/bouncepaw]] repos for an actual implementation, and [[https://anagora.org/@bouncepaw-betula]] and [[https://anagora.org/@bouncepaw-flancian]] to see how it looks in Agora.
= Algorithm
*. In [[Flancia]], there is a [[Betula]].
*. Daily, an unauthenticated script fetches /cat
to see all categories. It is unauthenticated, so no private links leak. There is also a git repository set up.
*. For each category:
**. Create a file called <category name>.myco
.
**. Write {
= <category name>
<category description>
} **. For each link in category: ***. Write {
== <link title> ([[<post url> | on Betula]])
[[<link url>]]
<link description>
*. An Agora then fetches the repository somehow.
Note that the link description is formatted in Mycomarkup^^2^^. It can thus be inserted verbatim. But what if the Betula administrator writes descriptions that break the formatting of further links in the resulting document? So be it. } *. {
git add .
git commit -m `date "+%Y-%m-%d"`
git push
}
= Footnotes ^^1^^ Id est Agora continues to aggregate [[Git]] repositories. Currently, Agora has a poor support of [[Mycomarkup]], but [[Flancian]] wanted to improve it, and I believe he will, so I'm not considering Mycomarkup support to be an obstacle. In the future, a [[anagora>agora.yaml]] convention might arise, thus removing the need for such a script.
^^2^^ Perhaps, Betula could provide a special API for exporting categories in such Mycomarkup documents. /cat-as-myco/
or something. Less requests is better.
- public document at doc.anagora.org/betula_in_agora
- video call at meet.jit.si/betula_in_agora