このExampleではVRoid Hub APIを利用して、
- VRoid HubとのOAuth2.0連携(NextAuth.jsを利用)
- キャラクターモデル一覧の取得
- キャラクターモデルに紐づいたアバターファイル(.vrmファイル)の読み込み
- アバターモデルの表示(@pixiv/three-vrmを利用)
を行うことができます。
mainブランチの最新のコードで動作しているデモを公開しています。
- Node.js: v18.16.0
- yarn: 1.22.19
- 推奨ブラウザ: Chrome
- VRoid Hubの開発者登録ページにアクセスします。
- VRoid Hubにログインした上で、必要事項を入力し、開発者登録を行ってください。
- VRoid HubとOAuth連携するアプリケーションの情報をVRoid Hubに登録します。次項に進んでください。
- VRoid Hubの連携アプリケーション管理ページにアクセスします。
※連携アプリケーション管理ページの言語設定はVRoid Hubの言語設定に依存します。 - 「新しいアプリケーション」ボタンを押下し、アプリケーション作成画面に遷移します。
- 必要事項を入力し、「登録」ボタンを押下するとアプリケーションが作成されます。
※ローカルでこのリポジトリを動かす場合は、スコープにdefault
、リダイレクトURIにhttp://localhost:3000/api/auth/callback/vroid
を設定してください。 - 作成されたアプリケーションは連携アプリケーション管理ページに一覧表示されます。
- 作成したアプリケーションのページに遷移すると、アプリケーションID(ClientID)とシークレット(ClientSecret)が確認できます。これらの認証情報が記述されたJSONファイルを「Credentialファイル作成」よりダウンロードすることができます。重要な情報なので安全に保管してください。
- このリポジトリをクローンするかダウンロードしてください。
git clone [email protected]:pixiv/VRoidHub-API-Example.git
.env
ファイルに下記の環境変数を設定してください
CLIENT_ID= アプリケーションページから閲覧できるアプリケーションIDの値を入力してください
CLIENT_SECRET= アプリケーションページから閲覧できるシークレットの値を入力してください
NEXT_PUBLIC_NEXTAUTH_SECRET= openssl rand -base64 32 コマンドで生成したシークレット値を入力してください
NEXTAUTH_URL= ExampleをホストしているURLのroot URLを入力してください
NEXT_PUBLIC_VROID_HUB_URL= https://hub.vroid.com と入力してください
- 必要なパッケージをインストールしてください。
yarn install
- パッケージのインストール完了後、下記コマンドで開発用webサーバーが起動します
yarn dev
- 実行後、以下のURLにアクセスして動作を確認してください http://localhost:3000
VRoid Hubでは外部アプリケーションがVRoid Hubにあるアバターファイルを利用するためのAPIを公開しています。
APIの利用にはVRoid Hubでの開発者登録とアプリケーションの作成、OAuth2.0による認可が必要です。
VRoid Hub APIを利用すると、VRoid Hubに登録されたキャラクターを自分のアプリケーションで利用できるようになります。
Apache2.0ライセンスに準拠しています。詳細はLICENSEを参照してください。