GitHub プロフィール README の外部ウィジェット
一言まとめ
github-readme-stats などの公開インスタンスは GitHub API の 5,000 req/h 上限を共有していて不安定。private リポの実績を出すには PAT + 自前ホストか GitHub Actions が要る。2025〜2026 の傾向は「シグナル優先・全部盛り忌避」。
目次 8 sections
調査時点: 2026-06。スター数・リリース日はその時点のスナップショット。
仕組み
GitHub は <username> と同名の public リポジトリに置いた README.md をプロフィールに表示する。内容は自由で、外部サービスが生成する SVG 画像を  で貼る構成が定番になった。
主要サービス
| サービス | 表示するもの | 公開インスタンス | スター(2026-06) | 状態 |
|---|---|---|---|---|
| github-readme-stats(anuraghazra) | コントリビューション統計、top-langs、WakaTime カード | github-readme-stats.vercel.app | 79.7k | アクティブ。公開インスタンスのレート制限が深刻で廃止を検討 |
| github-readme-streak-stats(DenverCoder1) | 総コントリビューション・連続日数 | streak-stats.demolab.com | 6.9k | アクティブ(v1.7.0 2026-06)。断続的なダウン報告あり |
| github-profile-trophy(ryo-ma) | 実績トロフィー | github-profile-trophy.vercel.app | 6.6k | アクティブ。サーバーコスト増でスポンサー依存 |
| github-readme-activity-graph | コントリビューションの折れ線 | github-readme-activity-graph.vercel.app | 2.3k | Heroku → Cyclic → Vercel と 2 回移転 |
| github-profile-summary-cards | 言語・コミット・スターのカード群 | github-profile-summary-cards.vercel.app | 3.6k | GitHub Action 型も選べる |
| metrics(lowlighter) | 30 以上のプラグイン、SVG / Markdown / PDF | metrics.lecoq.io(制限あり) | 16.8k | フル機能は GitHub Action 必須 |
| readme-typing-svg(DenverCoder1) | タイピングアニメーション | readme-typing-svg.demolab.com | 9k | アクティブ(v0.9.0 2024-07) |
| shields.io | 動的・静的バッジ。月 16 億枚配信 | shields.io | 26.8k | 5 名のメンテナー体制で積極メンテ |
| skill-icons(tandpfun) | 技術スタックのアイコン一覧。Cloudflare Workers 配信 | skillicons.dev | 12.6k | アクティブ |
| capsule-render(kyechan99) | ヘッダー・フッターのバナー SVG | capsule-render.vercel.app | 1.7k | アクティブ |
| komarev profile views counter | プロフィール表示回数 | komarev.com/ghpvc | 5k | PoC 扱い、スポンサー依存 |
| waka-readme(athul) | WakaTime のコーディング時間を README に自動更新 | - | - | GitHub Action 型。WakaTime API キー必須 |
| blog-post-workflow(gautamkrishnar) | RSS から最新記事リストを自動更新 | - | 3.4k | アクティブ(v1.9.6 2026-04)。Zenn も RSS URL 直接指定で可 |
| spotify-github-profile(kittinan) | 再生中の Spotify 曲 | spotify-github-profile.kittinanx.com | 2.1k | 2024-06 に Vercel → Digital Ocean |
| github-trends(avgupta456) | LOC 統計 | githubtrends.io | 16k | 2025-08-15 にアーカイブ(終了) |
「生きているか」問題
- github-readme-stats は 2026-01 に「Vercel ホスティング廃止の検討」が issue 化され、公式 README も「公開インスタンスはベストエフォート」と明記している。根本は GitHub API の 5,000 req/h 上限を多数のユーザーが共有インスタンスで食い合うこと。2026-02 にも「not working again?」の issue が立っている。
- activity-graph や Spotify カードのように、ホスト移転を繰り返すサービスがある。スポンサー依存の小規模プロジェクトは突然消えるリスクがゼロではない。
- github-trends は 16k スターでもアーカイブされた。人気だったサービスをそのまま残すと壊れた画像が表示され続ける。年 1〜2 回は全リンクの動作確認をする。
private リポの実績を含める
公開インスタンスはサービス提供者の PAT で API を叩くので、閲覧者に見えるのは public リポのデータだけ。含めるには:
- 自前 Vercel デプロイ: リポジトリを fork し、環境変数
PAT_1に自分の PAT を設定してデプロイ。private stats オプションを有効化する。PAT_2,PAT_3と複数設定してレート制限を分散できる。 - GitHub Actions 駆動: metrics や summary-cards の Action 型を使い、コミット時に SVG を生成してリポジトリに保存する。PAT は Actions Secrets に置く。
PAT のスコープは最小にする(read:user、private を含めるなら repo)。2025 年に GitHub 上で 2,800 万件超のクレデンシャルが漏洩したという報告があり、workflow ファイルへのハードコードと .env のコミット漏れが典型。
構成の定番と傾向
| セクション | 内容 | 備考 |
|---|---|---|
| ヘッダー | capsule-render バナーか typing SVG | 第一印象 |
| 自己紹介 | 1〜2 文の現在の focus | 10 秒で「何をしている人か」 |
| 技術スタック | skill-icons か shields.io のバッジ | 量より精選。実際に使うものだけ |
| GitHub Stats | github-readme-stats カード | 自前ホストか Action 推奨 |
| ストリーク | streak-stats | 空白期間も見られる |
| 現在の取り組み | GitHub 標準の Pinned repositories で代替可 | 別ウィジェット不要 |
| ブログ最新記事 | blog-post-workflow | RSS がある媒体なら対応 |
| 連絡先 | shields.io の静的バッジ | 多すぎると散漫 |
2025〜2026 の傾向は**「シグナル優先・全部盛り忌避」**。バッジを並べすぎると「使ったことがある」と「得意」の区別がつかず、採用担当者にはノイズになる。Contribution Graph そのものと、ピン留めリポジトリの README の質の方が信用される。「2024 年のバッジが 2026 年にそのまま」という放置への批判も増え、四半期ごとの更新が推奨される。visitor counter は PoC 扱いで信頼性が低く、採用文脈では省略が無難。
アンチパターン
- 画像過多: GitHub は画像を Camo プロキシ経由でキャッシュし、古くなるとバッジが正しい値を出さないことがある。外部サービスの 1 つが落ちるだけで README が壊れた印象になる。GitHub Actions で SVG を生成してリポジトリに commit し、
raw.githubusercontent.comから参照するとキャッシュ問題が減る。 - アクセシビリティ(GitHub 公式 Blog): alt テキストは「stats」ではなく「GitHub contribution statistics for username」のように具体的に。絵文字を連続して並べない(スクリーンリーダーが正式名称を全部読む)。リンクテキストは「こちら」を避ける。見出し階層を正しく使う。
関連
更新履歴
- 2026-06-17: 初版(ローカル調査ノート)
- 2026-10-17: Wiki へ移植、概念ページとして再構成
出典
- https://github.com/anuraghazra/github-readme-stats
- https://github.com/anuraghazra/github-readme-stats/issues/4748
- https://github.com/anuraghazra/github-readme-stats/discussions/814
- https://github.com/DenverCoder1/github-readme-streak-stats
- https://github.com/ryo-ma/github-profile-trophy
- https://github.com/lowlighter/metrics
- https://github.com/DenverCoder1/readme-typing-svg
- https://github.com/badges/shields
- https://github.com/tandpfun/skill-icons
- https://github.com/gautamkrishnar/blog-post-workflow
- https://github.com/avgupta456/github-trends
- https://docs.github.com/en/account-and-profile/how-tos/profile-customization/managing-your-profile-readme
- https://github.blog/developer-skills/github/5-tips-for-making-your-github-profile-page-accessible/
- https://snyk.io/articles/state-of-secrets/
- https://codeboards.io/blog/github-profile-readme-guide