作品一覧ABOUT

WORKS

Web Service / Flutter

まいにち読書

まいにち読書

読書の時間を計測し、ジャンル別の傾向を可視化する読書記録サービス。毎日の読書を習慣にするための Web アプリ。

概要

読んだ時間を計測して、どんなジャンルをどれだけ読んでいるかを可視化する読書記録サービスです。毎日の読書を習慣にすること、そして自分の読書の傾向や、まだ手を伸ばしていないジャンルに気づくことを目指しています。

  • 使用技術:Flutter Web(Dart)、Cloudflare Workers(Hono)、Supabase(PostgreSQL・認証)、楽天ブックス API、Turborepo
  • 担当範囲:企画・設計・デザイン・実装・運用(ひとりで開発)

主な機能

  • 読書タイマー:本を選んで読み始め、読み終わったら止めるだけで読書時間を記録します。
  • 本棚:タイトルや ISBN で本を検索して登録し、読みたい・読んでいる・読み終えたを管理できます。
  • ジャンル別の可視化:読書時間をジャンルごとに集計し、傾向をグラフで振り返れます。
  • 読書カレンダー:毎日の読書量を、GitHub の草のようなカレンダーで表示します。
  • いま読書中・ランキング:トップページでは、いま読書中の人や、よく読まれている本、連続読書のランキングが見られます。
  • 公開プロフィール:自分の本棚や読書記録をページとして公開できます。

こだわったところ

ジャンルごとの時間の按分

1 冊の本が複数のジャンルに属していても、読書時間をジャンルごとに按分して集計します。そのため、偏りのない傾向が見えます。

1 つのコードで Web もアプリも

最初は Next.js と Flutter の 2 本立てでしたが、機能の差やスキーマ変更への追従が負担になったため、Flutter に一本化しました。Web 版と API を 1 つの Cloudflare Worker から配信しています。