VRCSnap!
・概要 TwitterからVRChatのスクリーンショットを収集し、それをAWS Rekognitionでタグ付け&人物(アバター)が写っている範囲を特定、毎時のRT数とFav数を集計してランキングにして表示する ・アーキテクチャ - フロントエンドはNuxt.js(SSR) + AWS Fargate - バックエンドはAWS Amplify - ツイートの取得やAWS Rekognitionとの連携はLamdba Function(Python)を定期実行 - DBはDynamoDB ・動機・目的 - VRChat・アバター文化圏のファッションの流行を追うため - Nuxt.js + AWS Amplifyでのサーバーレスなサービスの構築の習作として作成 ・苦労したこと - NoSQLでのDB設計 ローカルインデックスは時刻は日付ごとにパーティションキーを設定、新着順に時刻・ランキング用にRT, Favをソートキーに設定した。また、ユーザー別のツイート抽出のためにユーザー名をパーティションキーとしたグローバルインデックスを設定した。ユーザー一覧に関しては別テーブルを作成した。