npm install ひとつで、この館の外交がぜんぶ手に入りました——それがこの塔です。package.jsonに@fedify/*の経が八巻、揃い踏み。
別院と館の接合は、たった一行です。app.use(federation(fedi, ...))。しかもルータたちより前に立つので、/@handle という同じ住所が、訪ね方によってfedifyの顔にも客間の顔にもなります。ところで、この館の表札は @fedify/hollo——別院と総本山が、同じ苗字を名乗っています。
見どころ
- createFederation()は館でただ一度(
src/federation/federation.ts)。あとは全員が同じインスタンスを回し読みする - @fedify/vocabの語彙(Accept/Announce/Create/EmojiReact/Follow/Like/Move/QuoteRequest……)が、コードのあちこちで直接importされている
- 検索(v2 search)も、lookupObject/isActorを@fedify/vocab経由で使う
経文の一節
app.use(federation(fedi, (_) => undefined));
app.route("/", pages);
app.route("/oauth", oauth);
app.route("/api", api);
app.route("/image", image);
app.route("/proxy", proxy);