anon5r / bsky-car-decode-sample

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

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

概要

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

使い方

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

ビルド

docker compose build

起動

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 リポジトリの gosky を使用してCARデータをデコード
  6. データ内の投稿を一覧にして返す

About

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

License:MIT License


Languages

Language:PHP 78.6%Language:Dockerfile 16.1%Language:HTML 5.3%