MangaRank のソースコードを公開

MangaRank という Web サービスを個人開発していたが、今回そのソースコードを公開することに決めた。

github.com

MangaRank は、はてなブログのマンガカテゴリの記事をクロールし集計して、レビューの多いマンガをランキングにした Web サービス。

tnakamura.hatenablog.com

なぜソースコードを公開する決断をしたかというと、 はてなブログの記事をクロールして良い感じのランキングは出来上がったものの、 運用を続けてもほとんどランキングに変動がなかったから、というのが一つ。

もう一つの、そして主たる理由が、商品情報の取得に使っている AmazonPA-API の利用ポリシーが下記のように変わったから。

  1. PA-APIを継続してご利用いただくためには過去30日以内にPA-APIから取得したリンク経由の売上が少なくとも1件必要となります。
  2. アカウントのPA-APIのリクエスト上限数は過去30日以内の売上によって計算されます。

クローラーを動かし続けたところで、新しいマンガの商品情報を Amazon から取得できないなら、 動かすだけ無駄だなってことでクローラーは止めた。

フロントエンドは Netlify で公開していたけど、そっちはまだ残してある。 ランキング自体は自分にとって有用なので、しばらくはそのままにしておこうかなと。 他に Netlify で公開したい Web サービスができたら、 Netlify のリソースを明け渡そうと考えている。 それまで延命。

肝心のソースコードだけど、サーバーの方は .NET Core を使ったクローラーで、 技術的に大したことはやっていない。 GCPAmazonAPIC# で使うときの参考程度にはなると思う。 フロントエンドは Gatsby を使い、 Lighthouse のスコアを重視してチューニングしたので、 Blazing fast なサクサク感に仕上げてある。 こちらも、JAMStack の一例として参考になったら嬉しい。 なお、使った技術に関しては、下記の記事に詳しく書いてある。

tnakamura.hatenablog.com

ソースコードの公開が、個人開発した Web サービスの、せめてもの供養になれば良いと思う。

さて、次は何を作ろうかな。