Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/anon5r/bsky-car-decode-sample

BlueskyのCARファイルをデコードして投稿一覧を取得するサンプル実装
https://github.com/anon5r/bsky-car-decode-sample

Last synced: about 2 months ago
JSON representation

BlueskyのCARファイルをデコードして投稿一覧を取得するサンプル実装

Awesome Lists containing this project

README

        

# 概要

ハンドルを入力すると、アカウントのPDSからDAG-CBOR形式のCARデータを取得し、デコードして投稿の一覧を返します。

# 使い方

Docker実行環境が必要になります。
使用ポートは `8300` です。

## ビルド

```bash
docker compose build
```

## 起動

```bash
docker compose up -d
docker compose exec -it php-app composer install
```

起動して `http://localhost:8300` にアクセスすると、ハンドルを入力するフォームが表示されます。

# 仕組み

1. 入力されたハンドルからDIDを取得
2. DIDからPDSのエンドポイントを取得
3. PDSのエンドポイントにリクエストを送信
4. PDSへ `/xrpc/com.atproto.sync.getRepo` を使用してCARデータを取得
5. [bluesky-social/indigo](https://github.com/bluesky-social/indigo) リポジトリの `gosky` を使用してCARデータをデコード
6. データ内の投稿を一覧にして返す