Misskey
Misskey(ミスキー)は、日本発の分散型ミニブログ用のオープンソースソフトウェアである。syuiloが開発している。
Misskeyは短文投稿のための分散型SNSである。利用者の投稿は「ノート」と呼ばれる。Misskeyは他の分散型SNSと同様、管理者や設置場所の異なったサーバーが存在し、利用者はサーバーを選ぶ、あるいは自身でサーバーを開設することによってFediverseに参加する。Misskeyのサーバーは、「サーバー」と呼ばれる。Misskeyという名前は作者のsyuiloが名前を考えていたときに偶然聴いていたMay'nの楽曲「Brain Diver」の歌詞から採られている。
MisskeyはGitHub上でソースコードを公開しており、改善の提案を行うことができる。自分で改造することも自由である。ただし改造したMisskeyでサーバーを運営する場合は、AGPLv3に基づいて改造後のソースコードを公開する義務がある。またAPIが公開されているので、これを利用してアプリを作成することもできる。翻訳はCrowdin上で行われている。
TypeScriptとNode.jsを使って書かれている。データベースとして PostgreSQLを使用、2018年2月以降はWebクライアントにVue.jsを使用している。サーバー間の通信プロトコルには ActivityPubが使用されているため、Misskeyのサーバー間だけでなく、 MastodonやPleromaなど同標準に準拠した他のミニブログのサーバーと通信可能となっている。
2014年 - 開発が開始され、運用が始まる。
2018年4月8日 - サーバー間の通信プロトコルをActivityPub対応して分散型SNSになる。コードネームをnighthikeと改称。
2019年4月14日 - v11をリリース。データベースソフトウェアにPostgreSQLを採用した。コードネームをdaybreakと改称。
2020年2月6日 - v12をリリース。コードネームはindigo。
2023年1月16日 - v13をリリース。コードネームはnasubi。デザインの大幅な変更と機能追加が行われた。
Misskeyの運営は誰でもできる。広告収入などがない場合は電気通信事業の届出をしなくても運営でき、また寄付などで収益がある場合でも届出が必要な事業者には該当しないという総務省からの回答がある。しかし、長くサーバーダウンしてしまうと投稿の送信元にキューが溜まってしまい、連合先のサーバに迷惑をかけてしまうため24時間稼働することが望まれている。もしサーバーを閉鎖するときはHTTPステータスコード「410 Gone」を送出するのが望ましい。
Docker、bashスクリプトを使用したサーバー構築が可能である。
データベースの破損等でデータが消失した場合、バックアップを復元してもデータが消失した期間に作成したアカウント名を再び使用することはできない。これはノートを転送する際に使用する鍵が再生成されるため、ソフトウェアによっては作り直したアカウントでの投稿が読み込まれないためである。この仕様はDB内の全てのデータを初期化し、全く同じドメインで再構築した場合でも同様である。回避策としては、サブドメインを作成し移行するやり方がある。
Misskeyは4種類のタイムラインを持つ。ホームタイムラインには自分がフォローしたユーザーの投稿が新しい順に表示される。同様にローカルタイムラインにはそのサーバー内のすべてのユーザーの公開投稿、ソーシャルタイムラインにはホームタイムラインとローカルタイムラインを合わせた、グローバルタイムラインにはリモートも含めてそのサーバーが認識しているすべてのユーザーの公開投稿が表示される。
先述の通りMisskeyでは投稿のことを「ノート」と呼んでいる。ノートには公開範囲を指定することができ、範囲によって投稿を閲覧できるユーザーを限定することができる。
フォロー関係が無く全てのユーザーが閲覧できる。すべてのタイムラインに投稿される。
フォロー関係が無く全てのユーザーが閲覧できるが、グローバルタイムライン及びローカルタイムラインには投稿されずフォロワーのホームタイムラインのみに投稿される。非ログイン時でもプロフィールのページを開けばフォロワーでなくてもノートを閲覧できる。
フォローされているユーザーのみが閲覧でき、フォロワーのホームタイムラインのみに投稿される。非ログイン時でプロフィールページを開いても閲覧はできない。
メンションされたユーザーのみ閲覧できる。メンションされたユーザーのホームタイムラインのほかに、「ダイレクト投稿」のページに加え返信と同様の扱いであるため「あなた宛て」、「通知」のページでも閲覧でき通知される。
これらの投稿の種類に加えて、同じサーバー内のユーザーしか閲覧できないようにする属性を追加することができる。基本的に上記と同様だが、ダイレクト投稿はできない。
またノートにはTwitterのリツイートにあたる「リノート」という機能がある。リツイートと同様にフォロワーに他人のノートあるいは自分のノートを再投稿して拡散したり引用することができる。なおダイレクト投稿,自分以外が作成したフォロワー投稿にリノートすることはできない。RNと略される。
その他SNSの「いいね」と同様に、MisskeyではノートにUnicodeに準拠した絵文字、または管理者/モデレーターが追加したカスタム絵文字を使って反応することができる。投稿されたノートがMisskeyや絵文字リアクションに対応したサーバーからの場合、その絵文字がノート作成者に通知され、他のユーザーにもノートと一緒に表示される。なお、絵文字リアクションに対応していないソフトウェア(無改造のMastodon等)ではどの絵文字でリアクションしても「お気に入り」として通知・表示される。
藍(あい)
Misskeyの看板娘。同名のBotが存在し、挨拶を返す、迷路を生成する、数当てやリバーシの対戦相手になる等の機能がある。その他ある特定のフレーズに反応を返すこともできる。猫耳が生えているが、尻尾は生えていない。
ユーザーの投稿したファイルを管理する機能。 投稿に添付したりアカウントのアイコンに設定したりしたファイルはドライブに追加される。ファイルを直接ドライブにアップロードすることも可能。
画面の右側などに表示されるウィジェットは、自分好みに自由にカスタマイズすることができる。主なウィジェットに時間(デジタル及びアナログ)、カレンダー、RSSリーダー、付箋(メモ)などがある。
ノートにアンケートを添付できる。選択肢を2 - 10個設定し、ユーザーが1つ以上の項目に投票する。 アンケートの期限も自由に設定できる。
有効にすると、自分の全投稿で「な」と「ナ」、「na」が「にゃ」と「ニャ」、「nya」に変換される。 またアバターの上に猫耳が付く。 無効化すると元に戻る。
Markup language For MisskeyというMarkdown風の構文を投稿やプロフィールに使うことができる。
Dolphinは、Misskeyの派生として2019年10月から開発が始まったオープンソースの分散マイクロブログソフトウェアである。1人もしくは少人数サーバー用途向けとされている。サーバーの構築方法はMisskeyとほぼ同じであるが、ビルドに要するスペックはMisskeyよりも低い。
Groundpolisは、Misskeyをベースに開発されていたオープンソースの分散マイクロブログソフトウェアである。海老瀬るちかが開発しており、現在開発中のバージョン「Groundpolis v5」のコードネームは「Shrimpia」である。Misskeyの基本的な機能を残しつつ、絵文字を管理者にリクエストする機能や、絵を描いてそれをノートすることができるペイント機能などが追加され利便性を向上している。
MisskeyもマストドンもActivityPub規格に準拠した分散型SNSであるが、依存するプログラミング言語とライブラリが異なり、APIの互換性もない。思想的にMastodonがTwitterやFacebookなどの中央集権型SNSを批判する立場をとる一方で、当初は分散型SNSとして設計されていなかったMisskeyは反中央集権を志向しているわけではない。