🔭 Annict の視聴状況などを SVG 画像として出力する API サーバ (WIP)
Annict GraphQL API を使用しています。
docker-compose.yml
version: '3.8'
services:
server:
container_name: annict-profile-card
image: ghcr.io/slashnephy/annict-profile-card:master
restart: always
ports:
- 8080:8080/tcp
environment:
ANNICT_TOKEN: xxx # https://annict.jp/settings/tokens/new で発行できます
RUST_LOG: info,annict_profile_card=debug
今期視聴しているアニメ一覧を返します。表示される作品は Annict 上で「見てる」を設定したものが対象です。
クエリパラメータ | デフォルト値 | 説明 |
---|---|---|
season |
現在のシーズン | 表示するシーズンを 2021-summer という形式で指定します。all を指定した場合, すべてのシーズンが対象です。 |
bg_color |
1a1b27 |
背景の色を hex で指定します。 |
header_color |
70a5fd |
ヘッダーの色を hex で指定します。 |
text_color |
d6e3e1 |
文字の色を hex で指定します。 |
icon_color |
bf91f3 |
アイコンの色を hex で指定します。 |
title_color |
38bdae |
タイトルの色を hex で指定します。 |
limit_works |
10 |
表示する作品数を指定します。 |
limit_images |
3 |
表示する作品のアイキャッチ画像の数を指定します。 |
sort |
satisfaction |
作品一覧をソートする方法を指定します。satisfaction の場合, 満足度 % の値で降順にソートします。watcher の場合, 視聴者数の数で降順にソートします。 |
order |
desc |
ソートする方向を指定します。desc の場合は降順で, asc の場合は昇順になります。 |
expose_image_url |
false |
true の場合, SVG 画像内に埋め込まれる画像を外部 URL で埋め込みます。false の場合, Base64 エンコードされた画像が埋め込まれます。 |
-
GitHub 上に貼り付ける場合
expose_image_url=false
が必要 GitHub などのサイトに貼り付ける場合には CORS の関係で画像は Base64 エンコードして埋め込む必要があります。 -
GitHub 上では作品のアイキャッチ画像が表示できない
GitHub では SVG 画像の長さ制限?があるようでエンコードしても表示できません。limit_images=0
でアイキャッチ画像を無効化できます。