← ishizakahiroshi.com
ツール紹介 2026-06-19

自作ツールのダウンロード数を、全部1画面にまとめた

自作ツールのダウンロード数を1画面に集めるダッシュボードのイメージ

npm のダウンロード数を見て、GitHub Releases のページを開いて、リポジトリの star をまた別タブで確認して——「何個タブが要るんだろう」と思ったのがきっかけでした。1画面で全部見えるようにしたら、想像以上に手が止まらなくなった、という話です。

note で読む →

数字が3か所にバラけていた

個人で公開しているツールは、配布先がそれぞれ違います。npm に置いてあるものは npm のサイトでダウンロード数を見るし、バイナリ配布しているものは GitHub Releases のアセットダウンロード数を見る。star の動きは GitHub のリポページで見る。配布先が違えば、見る場所も違います。

1本しか公開していないうちは気にならなかったのですが、本数が増えてくると「今週何件くらい落とされたっけ」という素朴な確認だけで、3ページを開いて閉じることになります。リリースのたびにそれをやっていると、そのうちやらなくなる。やらなくなると、数字が動いていないことにも気づかなくなる。

「タブを増やさず、1画面で全部見たい」という気持ちは、たぶんどこかでみんな持っているはずで、自分で作ることにしました。

dl-stats という小さなダッシュボード

作ったのが dl-stats です。GitHub のユーザー名を1つ設定するだけで、その人が公開しているリポジトリを自動で拾い、npm のダウンロード数・GitHub Releases のアセット DL 数・star 数を1か所に集めます。

主な要素

「数字を見るためだけのページ」なので、画面はあえて軽くしました。グラフと数字、それだけ。設定 UI も最小限です。

常駐サーバーなしで、月額ゼロで動かす

運用は Cloudflare の無料枠だけで完結させました。常駐サーバーがいない構成なので、放っておいてもお金が出ていかない。個人ツールはここが一番大事だと思っています。

認証情報は wrangler secret put で環境変数に入れる方針にしました。コードには何も書かない。手元と本番で同じ手順を踏むので、設定がぶれない。個人ツールでこの規模なら、これが一番シンプルだと思っています。

無料枠で動かす設計は「いつでも捨てられる」という安心感もあります。動いていないと気づいたときに気軽に直せるし、要らなくなったらそのまま放置していい。使い続ける覚悟を要求しない構成が、結局のところ長持ちします。

ついでにポートフォリオも整えた

ツールを「数えて見せる」場所を作ったので、ついでに「並べて見せる」場所も整えることにしました。ishizakahiroshi.com の更新を3点。

どれも派手な機能ではないのですが、「自分で手を入れる工程」を減らしておくのが大事で、サイトを直したくないからツールを公開しない、みたいな順序のねじれを防いでいます。

「見えていれば、また触る」

個人ツールは、公開した瞬間がピークになりがちです。誰が使っているか分からないし、数字も見えないので、だんだん「あってもなくてもいい感じ」になってきて、最後は触らなくなる。

dl-stats を作った動機はそこに尽きていて、何か壮大な目的があるわけではないです。1画面で全部見える、それだけで十分でした。グラフの線が少し上がっているのを見ると「そういえばあれ、まだ直せるところあったな」と思い出します。逆に、横ばいでも「ちゃんと動いているな」で安心できる。どっちでも次の一歩につながる。

ポートフォリオも、完璧に作ろうとすると手が止まるので、動いている状態のまま小さく更新し続けるほうが性に合っています。作ったものが見える場所にある。それだけで、次を考えやすくなる気がしています。

関連リンク