プログラミングなんてわからないんですけど〜

元プログラマによるプライベートでのプログラミング日記。1/3のつもりだけどソフト関連はここがメイン

misskeyにopenstickerを適用する

マストドン界隈にinstancetickerというCSSプロダクトがあります。WebUIにtickerを追加してそのtootをした人がどのサーバに属しているか分かりやすく表示するものです。
instancetickerは、tsv形式でデータを他の開発者が利用できるように提供していたのですが、開発リソースをmastodon cssに集中させたいと言うことで廃止されることになりました。これを契機に別の開発者がopenstickerというプロダクトを立ち上げました。openstickerはinstanceticker css互換であり、json形式でのデータ提供もしています。
github.com


私は、openstickerのjsonデータを使い、misskey用cssを生成するプログラムを書きました。
github.com

プログラムはphpで書きました。これをsocialapi.appで呼び出せるように提供しています。

misskey向けのuser.jsも用意しています。
https://raw.githubusercontent.com/kaias1jp/socialapi/master/userscript/OpenStickerMisskey.user.js

これとは別に、サーバ管理者向けにサーバのscssに組み込む方法も提供しています。
編集対象はmisskeyのファイルのsrc/client/style.scssです。

:root { の行の前に以下の行を追加します。

@import url("https://socialapi.app/api/opensticker/css/misskey/opensticker.css");

この変更を加えた後でビルドしてmisskeyサービスを再起動すれば、次のような画面になります。
f:id:kaias1jp:20200922104508p:plain

うまく表示されない場合は、クライアント設定でキャッシュ削除してみてください。
f:id:kaias1jp:20200922104754p:plain
f:id:kaias1jp:20200922104815p:plain