Profile img

AmaseCocoa

@cocoa@hackers.pub · 11 following · 11 followers

日本語多め

Pythonista/Author of apkit. An Modularized ActivityPub Toolkit.

main (Iceshrimp)
@AmaseCocoa@i.amase.cc
YarukiNotFound
amase.cc
Zenn
@amasecocoa
0
2
0
0
1
0
0
1
0

apkitのActivityPubServerに関しては同期対応しないで非同期だけにしてる (分岐させてもいいけどわざわざこれでするであろう操作を同期でするとは考えてないから)

必要なら同期対応できるけどね

2
4

StarletteじゃなくてFastAPIベースにしたのはルートがデコレータで定義できたりするっていう理由がある (自分で実装してもいいかもしれないけど既存のものを基盤にできるならしたかった)

2
4
1
2
0
1
1
1
3
0
0
0
1
2
6
1
1
1
1

あとはapkit側で統合する場合にミドルウェアタイプだと追加でルーターを生やす必要が出てきてそれだとオーバーヘッドになる可能性があったっていうのもある

1

わざわざこんなことするのには理由があって、結局フレームワークと統合するにも今のアプローチだと限界があるっていうのが1つの理由 (今の方法だとその新しいフレームワークの方法 (FastAPIみたいにStarletteベースにする)よりも統合が弱くなる)。もう一つはapkitだから別のプロトコルに対応させるのは明らかに変だっていうこと。まぁ後者はATとかサポートするか怪しいから適当

2

apmodelとapsigの上に構築されたapkitの上に構築されたStarletteをベースとしたActivityPubフレームワークっていうとんでもなくわかりにくい書き方のものが生まれそう

まぁ正しく言うならFediverseフレームワークみたいなものになるけど

名称自体もap系ではないし落ち着いてきたら複数のプロトコルをサポートするようにしたい

3

apmodelとapsigの上に構築されたapkitの上に構築されたStarletteをベースとしたActivityPubフレームワークっていうとんでもなくわかりにくい書き方のものが生まれそう

2
3

もとにしたプロンプトは日本語だけど簡単に置き換えできるし一応言語の部分書き換えれば普通に別の言語のも作れると思う。ただdocs/index.mdだけ手動なのでそれは自分で直さないといけない (そもそもファイルの内容を翻訳したうえでこっちで一部置き換えてるのでAIの翻訳対応させる気にならないし面倒くさい)

1
4
1

あとはこれがないのか気になった理由は自前の実装が機能の有効/無効を切り替えたり拡張性を持たせたりするつもりでどうしても同じ実装でも利用可能な機能に差異が出る可能性があったから

0

というかこれは機械がどの機能をサポートするか把握するためだけのだったので説明とかはなくて結局劣る

表現が接頭辞から始まるのは特定の実装由来の機能だとしてどう表現するべきかって悩んた結果

1
1