果報

二度寝して待つ

はてなブックマーク人気エントリーのまとめサイトをつくった

この度、「はてなブックマーク人気エントリーまとめ」というサイトをつくりました。

hatena.yusukesakai.com

経緯とか

普段からはてなブックマークの人気エントリーをよくチェックしているのですが、「もっとこうだったらいいのに」という不満がいくつかありました。

  • コメントが読みづらい:注目コメントを読むとき、エントリー一覧から別ページに飛ばないといけないのが地味に面倒でつらい
  • 頻繁にチェックしてしまう:ランキングやコメントが常に変動するため、「今はどうかな?」と1日に何度もサイトを開いてしまってつらい
  • 夜は眩しい:寝る前にベッドでチェックすることが多いのですが、白基調のモードしかないので画面が眩しくてつらい*1

自分でつくる

色々考えた末「自分好みにできるかも?」と思い、開発したのがこのサイトです。

  • 同じページ内でコメント表示:エントリー一覧の中で、注目コメントをアコーディオン形式で展開できるようにしました
  • 「昨日のまとめ」をチェック:前日の人気エントリーを収集して表示することで、リアルタイム性はないものの、頻繁にアクセスする必要がなくなりました*2
  • ダークモード対応:ライトモードとダークモードを自由に切り替えられるようにしました

さらに独自機能として、Gemini APIによる記事の要約文を追加しました(公式だと記事冒頭の抜粋しか見れない)。元の記事を読む前に概要をざっくり把握できて便利です。

技術的なこと

詳細はAboutページに記載していますが、Next.js実行基盤のVercelを主軸に、様々なサービスと連携することで実現しています。今のところどのサービスも無料プラン内に収まっていて、アクセス数が大幅に増えたりしなければランニングコスト0のまま運用できる見込みです。

プログラムは全て生成AIに書いてもらいました。最初の1~2ヵ月はClaude Code、直近の1ヵ月はGemini (Antigravity)です。私は生成AIへの指示出しのみで1行もコードに触れていませんが、依頼や質問といった会話だけで軽く1000回以上はやり取りしたと思います。

サイトのレイアウトはcatnoseさんのHacker News 日本語まとめを模倣しました。今後、ご本人の目にとまり否定的な発言をされた際には即座に公開を中止するつもりです(さすがに認知されることはないと思いますが…)。

なお、以前は情報収集をはてなブックマークに対するスクレイピングで補っていましたが、現在は全て公式のRSSフィードとAPIから取得するように改修しました。

おわりに

とまあ色々書きましたが、経緯に関しては後からこじつけた感があり、正直に言うと「なんかできそうだし勉強にもなりそうだからやってみた」くらいの軽い動機です。

いったん実現したかったことはできたので、しばらくはバグ対応や各種改良に時間をかけるつもりです。それも一段落したら、生成AIを使ったPodcastにも挑戦してみようと思ってます。

ということで、良かったら使ってください。

*1:と思いましたが、アプリならダークモードがあるんですね、開発後に気づきました…ずっとブラウザで見てて気づかなかった

*2:はてなブックマークの公式でも過去日毎のページはありますが、エントリーの掲載数が限定されているため、全て拾えるわけではない点がミソです