Go to file
usbharu 75547d280c style: fix lint (CI) 2024-09-09 09:51:59 +00:00
.github chore(deps): update madrapps/jacoco-report action to v1.7.0 2024-08-30 20:10:25 +00:00
gradle/wrapper chore(deps): update dependency gradle to v8.10 2024-08-14 13:46:21 +00:00
hideout-activitypub chore(deps): update dependency gradle to v8.10 2024-08-14 13:46:21 +00:00
hideout-core Merge branch 'develop' into renovate/detekt 2024-09-09 18:48:09 +09:00
hideout-mastodon style: fix lint (CI) 2024-09-09 09:51:59 +00:00
owl chore(deps): update dependency gradle to v8.10 2024-08-14 13:46:21 +00:00
.gitignore chore: ロガーをlogbackに変更して構造化ログを出力するように 2024-09-07 13:27:02 +09:00
LICENSE chore: ライセンスの追加 2024-02-17 10:45:13 +09:00
README.md Create README.md 2024-02-16 22:06:15 +09:00
build.gradle.kts chore: ロガーをlogbackに変更して構造化ログを出力するように 2024-09-07 13:27:02 +09:00
detekt.yml style: fix lint 2024-06-17 22:47:36 +09:00
docker-compose.yml chore(deps): update mongo docker tag to v7.0.14 2024-08-26 22:30:03 +00:00
gradle.properties chore: ciを改善 2024-08-13 20:11:00 +09:00
gradlew chore(deps): update dependency gradle to v8.9 2024-07-11 15:55:57 +00:00
gradlew.bat chore(deps): update dependency gradle to v8.9 2024-07-11 15:55:57 +00:00
http-client.env.json chore: httpクライアントの整備 2024-08-26 13:34:20 +09:00
libs.versions.toml chore(deps): update detekt to v1.23.7 2024-09-09 07:16:06 +00:00
license-list.xml chore: ライセンスの確認をするように 2024-02-18 12:06:44 +09:00
mastodon-api.http chore: httpクライアントの整備 2024-08-26 13:34:20 +09:00
renovate.json chore: Rnovateの自動マージを有効化 2024-06-28 17:46:08 +09:00
settings.gradle.kts style: fix lint 2024-06-13 15:38:48 +09:00

README.md

Hideout

HideoutはMastodon互換APIを備えたSNSで、ActivityPubに対応し、KotlinとSpring Frameworkを使用して制作されているソフトウェアです。現在は開発中で、SNSとして主要な機能を備えていますが、セキュリティの問題や不安定なテーブル定義などがあるためホストすることはおすすめしません。

特徴

ActivityPubでつながるネットワーク

ActivityPubを実装しているためMastodonやMisskey、Pleromaとつながることができます。また、ActivityPub以外の分散型の通信プロトコルを実装することがあるかもしれません。

Mastodon互換API

OAuth2プロバイダーを含めたほとんどのAPIがMastodonとの互換性を持っているため、既存のMastodon クライアントを使用することができます!また、今後Fedibirdやglitch-soc互換のAPIを実装するかもしれません。

セルフホスト

[!CAUTION] 免責事項

本ソフトウェアを利用して発生したすべての事象に対して開発者は責任を負いません。 本ソフトウェアはApache License 2.0を採用しています。

現時点でセルフホストはおすすめしませんが、実験用としてホストすることはできます!

使用技術

  • Kotlin 強力な言語機能でアプリケーションの安全性を高めます。
  • Spring Framework (Spring Boot/Spring Security/Spring Web/Spring Data) 豊富な機能と堅牢なライブラリでソフトウェアの基幹部分を担います。
  • OpenAPI スキーマファーストのエンドポイント自動生成はAPIの安定性を高めます。

要件

起動

  • Java 21
  • PostgreSQL 12+
  • MongoDB(必須でない) 4.4.x+

ビルド

  • Java 21
  • Gradle 8+

実験用途として、PostgreSQLはH2DB(バンドル)のPostgreSQL互換モードでも問題ありません。

Java 17でもビルド/起動ができますが、サポートしません。

MongoDBを使用しない場合、構成でhideout.use-mongodbをfalseにする必要があります。

ビルド

今後のリリースでビルド済みjarなどを使う場合はスキップしてください。

gradle bootJar

build/libs/hideout-x.x.x.jarが生成されます。

起動

適切に設定したapplication-dev.ymlなどをクラスパス上に準備します。

devprodなどに置き換えたり、複数指定することもできます。

java -jar build/libs/hideout-x.x.x.jar --spring.profiles.active=dev

https://spring.pleiades.io/spring-boot/docs/current/reference/html/getting-started.html#getting-started.first-application.executable-jar.gradle

注意事項

本ソフトウェアは開発中です。正常に機能しない場合があります。また、連合先に迷惑をかける事になる可能性があります。DB/設定ファイル/その他リソースなどの利用方法に破壊的な変更が入る可能性があります。