このプロジェクトについて
# AT Protocol 参照実装 (TypeScript)
このリポジトリには、分散型ソーシャルメディアプロトコルであるAT Protocol(atproto)のBlueskyによる参照実装と、`app.bsky`マイクロブログアプリケーションサービスのバックエンドが含まれています。サードパーティ製ソフトウェアがファーストパーティと同様にシームレスに動作するよう設計されており、カスタムフィード、連合サービス、代替クライアントはすべて同じAPIに対して構築されます。
## 含まれるもの
### Lexicons
`com.atproto.*` と `app.bsky.*` の両名前空間の標準スキーマ定義で、Lexiconスキーマ定義言語(JSON SchemaやOpenAPIに類似)で記述されたJSONファイルとして保存されています。
### TypeScriptパッケージ
`@atproto/*` スコープ(内部ユーティリティは `@atproto-labs/*`)でnpmに公開されています。主要パッケージは以下の通りです:
- **`@atproto/lex`** – LexiconスキーマからTypeScriptを生成し、HTTP(XRPC)クライアントを提供する型安全なSDK。アプリやボットの構築に推奨されます。旧来の `@atproto/api` クライアントも存在しますが、新規コードでは `@atproto/lex` を推奨します。
- **OAuthパッケージ** (`./packages/oauth/`) – 「Sign in with Bluesky」のクライアントおよびサーバー実装。ブラウザ、Node、Expoランタイム向けのバリアントがあります。
- **プロトコル基本要素** – 識別子解析(`syntax`)、DID/ハンドル解決(`identity`、`did`)、署名(`crypto`)、リポジトリ&Merkle Search Tree(`repo`)、ファイアホース消費(`sync`)に特化したパッケージ。
- **共有ユーティリティ** – `common`、`common-web`、`./packages/internal/` 内の内部グルーコード。
### TypeScriptサービス
各サービスは `packages/<name>` に実装があり、`services/<name>` に薄いランタイムラッパーがあります:
- **`pds`** – Personal Data Server。atprotoアカウントのリポジトリコンテンツをホストします。セルフホスティング手順は [bluesky-social/pds](https://github.com/bluesky-social/pds) にあります。
- **`bsky`** – `app.bsky.*` APIエンドポイントのAppView実装。メインネットワークの `api.bsky.app` で稼働しています。
- **`bsync`** – AppViewがミュートや通知などのクロスサービス状態に使用する内部同期サービス。
- **`ozone`** – `tools.ozone.*` APIを実装するモデレーションサービス。
## ここにないもの
Bluesky Socialクライアントアプリ(Webおよびモバイル)のソースコードは [bluesky-social/social-app](https://github.com/bluesky-social/social-app) にあります。BGS実装を含むGo言語のソースコードは [bluesky-social/indigo](https://github.com/bluesky-social/indigo) にあります。
## はじめに
- **概要とガイド**: [atproto.com/guides/overview](https://atproto.com/guides/overview)
- **質問**: [GitHub Discussions](https://github.com/bluesky-social/atproto/discussions)
- **プロトコル仕様**: [atproto.com/specs/atp](https://atproto.com/specs/atp)
## 貢献
貢献は歓迎しますが、質の高いissueとプルリクエストを優先します。開発者向けクイックスタート、ルール、ガイドライン(LLM支援による貢献に関するポリシーを含む)については [CONTRIBUTING.md](./CONTRIBUTING.md) を参照してください。コード規約は [STYLE_GUIDE.md](./STYLE_GUIDE.md) にあります。
## セキュリティ
セキュリティ問題は security@bsky.app(チームに自動CCされます)に報告してください。詳細は [SECURITY.md](https://github.com/bluesky-social/atproto/blob/main/SECURITY.md) を参照してください。
## ライセンス
MITおよびApache 2.0のデュアルライセンスです。派生プロジェクトは、いずれかのライセンスを個別に、または両方を併用して選択できます。Bluesky Social PBCはソフトウェア特許非攻撃の誓約を行っています([発表](https://bsky.social/about/blog/10-01-2025-patent-pledge) を参照)。
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.