📝

GitHubのプロフィールに、推しウマ娘を表示する

4 min read

GitHub Actionsの lowlighter/metrics を使って、AniListから推しキャラクターを取得し、プロフィールに表示します。あと、見ているアニメや読んでいるマンガなども表示できます。

こちらの手順、及び俺の推しは2021年9月6日現在のものです


使用Actions

https://github.com/lowlighter/metrics

結果

プロフィールに、こんな感じのデータを表示します。

よく見ると「Favorites Characters」としてキャラが表示されています。英霊や吸血鬼が混ざってますが気にしないでください。


以下、あなたのGitHubユーザー名は置換してください。

0. レポジトリを作る

あなたのGitHubユーザー名/あなたのGitHubユーザー名を作って、README.mdを置いてください。

1. AniListアカウントを作る

https://anilist.co/

AniListは、UIが素敵なアニメリストサービスです。

できるだけ、GitHubと同じユーザー名でアカウントを作ってください。

(できない場合はAction側を修正します)

MALからインポートする

https://myanimelist.net/panel.php?go=export

MyAnimeListユーザーの方は、上記URLからxml.gzをダウンロードできます。

https://anilist.co/settings/import

展開したxmlを、こちらにアップロードしましょう。アニメ・マンガリストをインポートできます。

2. キャラをお気に入りにする

MAL同様、AniListにもキャラクターページがあります。ハートマークを押せばお気に入り(推し)に登録できます。

各アニメでキャラは共有されています。海外のコミュニティの人々が頑張って一つ一つ追加しているのです。

ウマ娘1期

https://anilist.co/anime/98514/-/characters

ウマ娘2期

https://anilist.co/anime/124223/--Season-2/characters

3. GitHubのトークンを取得

(わかりづらいから生URL)

https://github.com/settings/tokens

上記ページで、Personal Access Tokenを取得します。

https://github.com/lowlighter/metrics#1-create-a-github-personal-token

lowlighter/metricsをフル活用するために、上記の説明に従って、適切な権限を与えてください。

(AniListは権限に関係ありません)

4. トークンを設定

トークンを、 プロフィールレポジトリのSecretsMETRICS_TOKENとして設定してください。

5. Actionsを設定

metrics.yml
# リファレンス: https://github.com/lowlighter/metrics/blob/master/action.yml
name: Metrics
on:
  # 更新間隔
  schedule: [{ cron: '30 0,12 * * *' }]
  workflow_dispatch:
  push: { branches: ['main'] }
jobs:
  github-metrics:
    runs-on: ubuntu-latest
    steps:
      - uses: lowlighter/metrics@latest
        with:
          # トークン
          token: ${{ secrets.METRICS_TOKEN }}

          # AniListはclassicが必要
          user: あなたのGitHubユーザー名
          template: classic
          config_gemoji: yes # non-unicode emojiを使えるように
          config_timezone: Asia/Tokyo
          retries: 3
          retries_delay: 300
          use_prebuilt_image: yes # 実行速度向上

          # 基本
          base: header
          # 本来は以下全てを表示すべき。今回は省略
          # base: header, activity, community, repositories, metadata
          repositories_forks: no
          repositories_affiliations: owner, collaborator
          repositories_skipped: あなたのGitHubユーザー名/あなたのGitHubユーザー名

          # AniList
          plugin_anilist: yes
          plugin_anilist_medias: anime, manga
          plugin_anilist_sections: characters, watching, reading, favorites
          plugin_anilist_limit: 2 # キャラ以外の同時表示数
          plugin_anilist_shuffle: yes # シャッフル
          plugin_anilist_user: .user.login # ユーザ名がGitHubと揃っている場合はこれでいい
          plugin_anilist_limit_characters: 22 # キャラ上限


AniList以外の項目は省略しています。 かなりもったいない使い方をしています。

https://github.com/lowlighter/metrics/blob/master/action.yml

AniList以外の設定項目はここに書いてあります。

AniListアカウントとGitHubのユーザー名が揃わない場合

AniListアカウントとGitHubのユーザー名が揃わない場合、plugin_anilist_user: .user.login はAniListに合わせてください。

6. プロフィールに掲載する

README.md
![Metrics](https://github.com/あなたのGitHubユーザー名/あなたのGitHubユーザー名/blob/main/github-metrics.svg)

結果のgithub-metrics.svgは自動生成されます。README.mdに画像として貼ります。

動作確認

pushで更新されます。1分ほどかかります。

MDにはコミットに関係ないURLを貼っているため、バリバリキャッシュされます。どうしても最新の結果が見たい場合は、ファイルのrawを見にいきましょう。

GitHubで編集を提案

Discussion

ログインするとコメントできます