gotosocial - 高速で楽しいアクティビティパブサーバー、Goを搭載。

(Fast, fun, ActivityPub server, powered by Go.)

Created at: 2021-02-27 20:42:23
Language: Go
License: AGPL-3.0

ゴートゥソーシャル

GoToSocialは、Golangで書かれたActivityPubソーシャルネットワークサーバーです。

GoToSocialを使用すると、友達と連絡を取り合ったり、画像や記事を投稿、読んだり、共有したりできます。追跡も宣伝もされずにすべて!

GoToSocialはまだアルファソフトウェアです。すでに展開可能で使用可能であり、他の多くのFediversiveサーバーとクリーンにフェデレーションします(まだすべてではありません)。しかし、多くのことはまだ実装されておらず、バグがたくさんあります!2023年のどこかでベータ版に入る予定です。

ドキュメントはdocs.gotosocial.org にあります。こちらの API ドキュメントに直接スキップできます。

インスタンスのランディングページのスクリーンショットを次に示します。

GoToSocial インスタンス goblin.technology のランディングページのスクリーンショット。インスタンスに関する基本情報が表示されます。ユーザー数や投稿数など

目次

GoToSocialとは何ですか?

GoToSocialは、軽量でカスタマイズ可能で安全性を重視したFediverseへの入り口を提供し、MastodonPleromaFriendicaPixelFedなどの既存のプロジェクトに匹敵します(ただし、異なります)。

TwitterやTumblr(あるいはMyspace!)のようなものを使ったことがあるなら。GoToSocialはおそらくあなたに馴染みがあるでしょう:あなたは人々をフォローしてフォロワーを持つことができ、あなたは人々がお気に入りに投稿して返信して共有することができる投稿を作り、タイムラインを使用してあなたがフォローしている人々からの投稿をスクロールすることができます。あなたは長い投稿や短い投稿を書くことができます、あるいは単に画像を投稿することができます、それはあなた次第です。もちろん、友達だけに投稿することで、人をブロックしたり、望まないやり取りを制限したりすることもできます。

GoToSocialのプロフィールのWebビューのスクリーンショットで、ヘッダーとアバター、略歴、フォロワー/フォロワー数を示しています。

GoToSocialは、コンテンツを提案したり、「エクスペリエンスを向上させる」ためにアルゴリズムを使用したり、ユーザーに関するデータを収集したりすることはありません。タイムラインは時系列です:タイムラインの上部に表示されるものはすべて、個人のプロフィールに基づいて興味深い(または物議を醸す)ものとして選択されたためではなく、投稿されたばかりです。

GoToSocialは、数万人のフォロワーを持つ「フォローしなければならない」インフルエンサー向けには設計されておらず、中毒性があるようには設計されていません。あなたのタイムラインとあなたの経験は、エンゲージメントの指標ではなく、あなたがフォローしている人とあなたが人々とどのように交流するかによって形作られます!

GoToSocialは他のどのアプリケーションよりも優れているとは主張していませんが、特にあなたにとってより良いかもしれない何かを提供します。

フェデレーション

GoToSocialはActivityPubを使用しているため、ホームサーバー上の人々だけでなく、フェディバース中の人々とシームレスにたむろすることができます。

アクティビティパブのロゴ

フェデレーションとは、ホームサーバーが世界中のサーバーのネットワークの一部であり、すべてが同じプロトコルを使用して通信することを意味します。データはもはや1つの会社のサーバーに一元化されるのではなく、独自のサーバーに存在し、他の人が運営する回復力のあるサーバーのウェブ全体で共有されます。

このフェデレーションアプローチは、潜在的に数千マイル離れた巨大な企業からの恣意的なルールに見守られないことも意味します。サーバーには独自のルールとカルチャがあります。あなたの仲間のサーバー居住者はあなたの隣人です。サーバー管理者やモデレーターと知り合うか、自分で管理者になることができます。

GoToSocialは、一人の人の声が群衆の中で失われる可能性のあるいくつかの大きくて一般的なサーバーではなく、人々がくつろげる多くの小さくて奇妙な専門サーバーを提唱しています。

歴史とステータス

このプロジェクトは、他のフェデレーションマイクロブログ/ソーシャルメディアアプリケーションの安全性+プライバシー機能に対する不満と、少し異なるものを実装したいという願望から、2021年2月/ 3月に生まれました。

それは単独プロジェクトとして始まり、より多くの開発者が興味を持ち、飛びつくにつれて勢いを増しました。

実装されているものと実装されていないもの、およびベータリリースに向けた進捗状況の詳細については、ロードマップドキュメントを参照してください。

顔立ち

マストドン API の互換性

Mastodon APIは、フェデレーションサーバーとのクライアント通信の事実上の標準となったため、GoToSocialはカスタム機能でAPIを実装および拡張しました。

要するに、これはTuskyPinaforeのようなモダンで美しいアプリの完全なサポートを意味します。

タスキー エプロン
タスキーのGoToSocialの画像 ピナフォアのGoToSocialの画像

マストドンをタスキーやピナフォアと一緒に使用することに慣れている場合は、GoToSocialを使用するのが簡単です。

詳細な投稿設定

何かを投稿するときに、その投稿を見る人を選択できることが重要です。

GoToSocialは、公開/非公開/友人のみ/相互のみ/および直接投稿を提供します(DMにスライド! -同意を得て)。

また、人々があなたの投稿と対話する方法をカスタマイズすることもできます。

  • ローカルのみの投稿。
  • リブログ可能/ブースト可能なトグル。
  • 「好感が持てる」トグル。
  • 「返信可能」トグル。

管理者のカスタマイズ性

管理者がいじることができる、次のような多くの構成オプション:

  • 簡単に調整可能なポスト長。
  • メディアアップロードサイズ設定。

実行が簡単

データベース以外の外部依存関係はありません(または単にSQLiteを使用してください!バイナリ+アセット(またはDockerコンテナ)をダウンロードして実行するだけです。

GoToSocialは、ラズベリーパイなどの低電力マシン、古いラップトップ、月額5ドルの小さなVPSでうまく機能します。

安全性+セキュリティ機能

  • Let's Encryptを使用した安全なHTTPSの組み込みの自動サポート。
  • 投稿に対する厳格なプライバシー適用と厳格なブロックロジック。
  • 許可リストと拒否リストをインポートおよびエクスポートします。コミュニティが作成したブロックリストを購読します(広告ブロッカーを考えてください、しかしフェデレーション用です!
  • HTTP署名認証:GoToSocialは、メッセージを改ざんしたり、IDを偽造したりできないように、メッセージを送受信するときにHTTP署名を必要とします。

さまざまなフェデレーション モード

GoToSocial は、フェデレーションに万能のアプローチを適用しません。サーバーがフェデレーションする相手は、ユーザーが行う必要があります。

  • 「通常の」フェデレーション。新しいサーバーを検出します。
  • リストのみのフェデレーションを許可します。通信するサーバーを選択します。
  • ゼロフェデレーション;サーバーをプライベートに保ちます。

OIDC インテグレーション

GoToSocialはOpenID Connect(OIDC)IDプロバイダーをサポートしているため、Auth0Gitlabなどの既存のユーザー管理サービスと統合することも、独自のユーザー管理サービスを実行してGtSをフックすることもできます(Dexをお勧めします)。

バックエンドファースト設計

他のフェデレーションサーバープロジェクトとは異なり、GoToSocialには統合クライアントフロントエンド(つまり、Webアプリ)は含まれていません。

代わりに、Matrix.orgのSynapseプロジェクトのように、比較的一般的なバックエンドサーバーの実装、プロファイルと投稿用のいくつかの美しい静的ページ、および十分に文書化されたAPIを提供します。

このAPIに加えて、Web開発者は、Tumblrのようなもの、Facebookのようなもの、Twitterのようなもの、またはまったく他のものなど、必要なフロントエンド実装またはモバイルアプリケーションを構築することをお勧めします。

ほしい物リスト

これらのクールなものは、時間が許せば実装されます(本当に欲しいので):

  • グループとグループ投稿!
  • レピュテーションベースの「遅い」フェデレーション。
  • フェデレーションとモデレーションアクションに関するコミュニティの意思決定。
  • 公開投稿をレンダリングするためのユーザー選択可能なカスタムテンプレート:
    • ツイッタースタイル
    • ブログ投稿
    • ギャラリー
    • 等。

はじめ

インストールと設定に関するすべてのドキュメントはdocs.gotosocial.org でホストされます。

サードパーティのパッケージ

GoToSocialのパッケージングに時間とエネルギーを費やしてくれたクールな人々に感謝します!既知のサードパーティのパッケージプロジェクトを以下に示します。

これらのパッケージはGoToSocialによって保守されていないため、質問や問題をリポジトリメンテナに直接送信してください(そして寄付してください!

既知の問題

GoToSocialはまだアルファ版であるため、バグがたくさんあります。これらを追跡するには、GitHub の問題を使用します。ここでそれらをチェックしてください

クライアント アプリの問題

GoToSocialはTuskyとPinaforeでうまく機能しますが、他の一部のクライアントアプリケーションはまだ作業が必要か、GoToSocialへの接続に問題があります。私たちはここでそれらを追跡しています。私たちの目標は、マストドンAPIと互換性のあるアプリをGoToSocialとシームレスに動作させることです。

フェデレーションの問題

すべてのActivityPubサーバーの実装はプロトコルの解釈がわずかに異なるため、一部のサーバーはまだGoToSocialと適切にフェデレーションされていません。このプロジェクトでは、これらの問題を追跡しています。最終的には、Mastodonとうまくフェデレーションできる実装がGoToSocialともフェデレーションできることを確認したいと考えています。

貢献

GtSに貢献したいですか?すごい!❤️❤️❤️問題のページをチェックして、何かに飛び込む予定があるかどうかを確認し、CONTRIBUTING.mdファイルでガイドラインと開発環境の設定を確認してください。

接触

質問やコメントについては、次のマトリックススペースに参加できます。これは、開発者に到達するための最も簡単な方法です。admin@gotosocial.org を郵送することもできます。

#gotosocial-space:superseriousbusiness.org

バグや機能リクエストについては、すでに問題があるかどうかを確認し、そうでない場合は、問題を開くか、上記のチャネルのいずれかを使用してリクエストしてください(Githubアカウントをお持ちでない場合)。

クレジット

ライブラリ

以下のライブラリとフレームワークは、感謝の気持ち💕を込めてGoToSocialによって使用されています

Image Attribution

Sloth logo by Anna Abramek, Copyright (C) 2021-2022 the GoToSocial Authors.

Developers

In alphabetical order:

Special Thanks

A huge thank you to CJ from go-fed: without your work, GoToSocial would not have been possible.

Thanks to everyone who has used GtS, opened an issue, suggested something, given funding, and otherwise encouraged or supported the project!

Sponsorship + Funding

OpenCollective

open collective Standard Sloth badge open collective Stable Sloth badge open collective Special Sloth badge open collective Sugar Sloth badge

Currently, work on GoToSocial is funded through donations to our OpenCollective page.

If you would like to donate to GoToSocial to keep the lights on during development, you can do so here! 💕 🦥 💕 Thank you!

LiberaPay

リベラペイの常連客 リベラペイ経由で受け取る

必要に応じて、LiberaPayにもアカウントがあります。あなたはここでそれを見つけることができます。

但し書き

ご注意:GoToSocialには企業スポンサーがなく、企業スポンサーシップを望んでいません。さらに、アダルトウェブサイト、アフィリエイトおよびレビューウェブサイト、カジノおよびギャンブル、保険および金融商品(クレジット)、薬局製品、SEOサービスとソーシャルメディア購入、VPNおよびプロキシサービス、エッセイライティングサービスのいずれからも寄付は受け付けません。そのような資金源からの寄付は自動的に拒否されます。

ライセンス

GNU AGPLのロゴ

GoToSocialはフリーソフトウェアであり、GNU AGPL v3ライセンスの下でライセンスされています。コードをフォークして変更し、ハッキングして実験することをお勧めします。

AGPLライセンスとGPLライセンスの違いについてはこちらをご覧ください、AGPLを含むGPLライセンスに関するFAQについてはこちらをご覧ください

GoToSocialソースコードを変更し、その変更したコードをネットワーク経由でアクセス可能な方法で実行する場合は、ライセンスのガイドラインに従ってソースコードへの変更を利用できるようにする必要があります

[I]お客様が本プログラムを変更する場合、お客様の改変されたバージョンは、コンピュータネットワークを介してリモートで本プログラムと対話するすべてのユーザー(お客様のバージョンがそのような相互作用をサポートしている場合)に、ソフトウェアのコピーを容易にする標準的または慣習的な手段を通じて、ネットワークサーバーから対応するソースへのアクセスを無料で提供することにより、お客様のバージョンの対応するソースを受け取る機会を目立つように提供する必要があります。

著作権(C)2021-2022GoToSocialの著者。