【個人開発】レシートとメーターを撮るだけ!AIが自動計算する燃費管理アプリ「FuelLens」を作った話

※当サイトはアフィリエイト広告(Amazonアソシエイト含む)を利用しています。

個人開発

今回は、個人開発で新しくリリースしたWebアプリケーション「FuelLens(フューエルレンズ)」について紹介する。

ツーリングやドライブ先でガソリンスタンドに寄ったとき、満タン法での燃費の記録は意外と面倒である。筆者自身、愛車のCB250Rに給油するたびに、スマホのアプリを開き、レシートを見ながら給油量や金額を手入力し、さらに車体のメーターを確認して走行距離を打ち込んでいた。

「この手入力の手間、最近のAIを使えば全部一発で終わるのではないか?」と思い立ち、開発したのがこのアプリである。当ブログのサブドメインで、無料・広告なしで公開している。写真からの読み取りはGoogleアカウントかメールでのログインが要るが、手入力・履歴・統計はログインなしで使える。

公開から5か月で中身はかなり変わったので、2026年10月の時点の姿に書き直した。

\FuelLensを今すぐ試してみる/
FuelLens
ガソリン代と燃費をスマートに管理

⛽ FuelLens とは?

FuelLensは、車の給油時に「ガソリンスタンドのレシート」と「車のメーター」をスマホで撮影(またはアルバムからアップロード)するだけで、AIが自動的に給油量・走行距離・金額などを読み取り、燃費を計算して記録してくれるWebアプリケーションである。

✨ 主な特徴

  1. AIによる読み取り
    • レシートとメーターが写った写真1枚を、AI(Google Gemini)が読んで、給油量・金額・区間距離を入力欄に入れてくれる
    • 保存する前に確認の画面が出て、自信の無い項目は「要確認」として目立たせている
    • AIは読み間違えるので、全部おまかせではなく、入力の下書きを作ってもらうという位置づけである
  2. 燃費と単価の自動計算
    • 読み取った「走行距離」「給油量」「合計金額」から、今回の燃費(km/L)やガソリン単価(円/L)を自動算出して記録する
  3. 車とバイクの複数車両管理 & CSVエクスポート対応
    • 「メインカーとセカンドバイク」のように、複数台の車両を切り替えて別々に管理できる
    • 記録はCSVで書き出せるので、データはいつでも手元に残せる
  4. ログインすればクラウドで同期(手入力だけならログイン不要)
    • ログインしていないときは、記録はブラウザの中にだけ保存され、サーバーには送られない
    • ログインすると記録はクラウドに保存され、スマホで撮ってPCでグラフを見る、という使い方ができる
    • ログイン前に入れた記録は、ログインしたときに自動でクラウドへ移る

2026年10月までに変わったこと

公開してから自分で使い続けて、困ったところを順に直してきた。
大きく変わったのは次の9つである。

  • 見た目
  • ログイン
  • 登録不要の計算ツール
  • 今月の燃費のシェア
  • 部分給油・記録漏れ・オドメーター
  • Fuelioからの引っ越し
  • バックアップと復元
  • アカウント削除とプライバシーポリシー
  • 表示の速さ

見た目を作り直した

画面を、バイクの計器盤のような暗い色のデザインに作り直した。ホームの真ん中には、燃費を示す半円のメーターを置いている。

スマホでは画面の下にタブバー(ホーム・履歴・統計・設定)があり、真ん中のボタンからすぐに撮影できる。

統計の画面では、燃費の推移と、月ごとの給油代、単価の推移をまとめて見られる。

Googleアカウントかメールでログインできるようにした

写真からの読み取りは、ログインした人だけが使える。公開したときのログインは、認証サービス(Clerk)の開発用の環境のままだった。2026年10月13日に本番の環境へ切り替え、Googleアカウントか、メールに届くコードでログインできるようにした。

ログイン画面も日本語にした。ただ、メールで届く確認コードの文面は英語のままである(Clerkの無料プランでは文面を変えられない)。

登録不要の燃費計算ツールを置いた

走行距離と給油量を入れるだけで、満タン法の燃費が出るページを作った。支払った金額も入れると、1Lあたりの単価と、1kmあたりのガソリン代も出る。ログインも登録もいらない。

満タン法 燃費計算ツール | FuelLens
走行距離と給油量を入れるだけで、満タン法の燃費(km/L)をすぐに計算。支払総額からガソリン単価(円/L)と1kmあたりの燃料費も出せます。正しい測り方のコツやよくある間違いも解説。登録不要・無料。

今月の燃費を画像でシェアできる

ホームと統計の画面に「今月の燃費をシェア」のボタンを付けた。今月の燃費を1枚の画像にして、Xに投稿したり、画像として保存したりできる。

画像はスマホの中で作っていて、サーバーには送らない。今月に計算できる給油が無いときは、直近30日のぶんで作る。

部分給油・記録漏れ・オドメーターに対応した

記録を続けていると、きれいな満タン給油ばかりにはならない。

満タンにしなかった回は「部分給油」にしておくと、次に満タンにしたときに距離と給油量を合計して燃費を出す。給油を記録し忘れたときは「前回の給油を記録し忘れた」を付けると、そこで計算を区切る。

トリップメーターの無い車は、オドメーターの値を入れれば、前回との差から区間距離を出す。

私のタクトの記録にも、94.71km/Lというありえない値が1件ある。
4年分の燃費の記録はタクトの実燃費の記事にまとめている。

Fuelioから引っ越せるようにした

燃費記録アプリ「Fuelio」のCSVを、そのまま取り込めるようにした。私の原付とバイクの記録も、もともとはFuelioに手で打ち込んでいたものだ。

FuelLens自身が書き出したCSVも取り込める。

バックアップと復元

設定の画面から、全車両・全記録を1つのJSONファイルに書き出せる。同じファイルから戻すこともできる。戻すときは足すだけで、今あるデータを消したり上書きしたりはしない。

アカウント削除とプライバシーポリシー

設定の画面から、アカウントを削除できるようにした。削除すると、クラウドに保存した車両と記録もまとめて消える。元には戻せない。

あわせてプライバシーポリシーと利用規約のページを置いた。撮った写真は読み取りのためにGoogleのGemini APIへ送るだけで、FuelLensのデータベースには保存しない。

表示が速くなった

トップページのLighthouse(モバイル)のパフォーマンスは、56から98になった(2026/10/14・本番・Lighthouse 12.8.2)。効いたのは2つだけである。

1つ目は、日本語のWebフォント(Noto Sans JP)をやめて、端末に入っているフォントにしたこと。1ページで30ファイル以上、約700KBのフォントを読み込んでいた。

2つ目は、トップページや計算ツールのような公開ページから、ログイン(Clerk)とデータベース(Supabase)の部品を外したこと。

凝った最適化をする前に、重いものを外すだけで足りた。

🛠 採用した技術スタックと選定理由

今回の開発では、モダンで開発体験(DX)に優れた技術を積極的に採用した。各技術の選定理由は以下の通りである。

フロントエンド・フレームワーク

  • Next.js 16 (App Router) / React 19
    • 2026年10月14日の時点の版は、Next.js 16.3.8、React 19.2.8である
    • Reactのエコシステムをフル活用しつつ、ルーティングからバックエンド処理(API Routes)まで一つのフレームワークで完結させるため採用
    • App Routerの直感的なディレクトリ構造の恩恵を大きく受けている
  • Tailwind CSS (v4)
    • ユーティリティファーストな設計により、コンポーネントを組むのと同じスピードで直感的なスタイリングが可能
    • 今回はより軽量かつ高速になった最新のv4を導入した

認証・データベース

  • Clerk (@clerk/nextjs)
    • 認証周りを迅速かつ安全に実装するための最適解。Next.jsとの親和性が非常に高く、コンポーネントを配置するだけでリッチなログイン体験を構築できるため、初期開発のスピードが劇的に向上した。
  • Supabase (@supabase/supabase-js)
    • バックエンドとして採用したオープンソースのBaaS。PostgreSQLの堅牢性を持ちながら、フロントエンドからREST API感覚でデータ操作が可能。ClerkのJWT連携を活用したセキュアな構成(RLS制御)を組みやすい点が決め手となった。

AI・画像処理

  • Google Gemini API (@google/genai)
    • このアプリの心臓部。強力なマルチモーダル処理能力を持つため、フォーマットがバラバラなレシート画像からも「どこが給油量で、どこが合計金額か」を高精度に読み取ってくれる。
  • browser-image-compression
    • スマホの高画質なカメラ画像をそのままバックエンドに送ると、通信量やAPIペイロード上限のボトルネックになる
    • これを防ぐため、クライアントサイドで画像を素早くリサイズ・圧縮し、快適な動作速度を維持している
    • いまは長辺1200px・0.8MB以下のJPEGにしてから送っている

UI・グラフ描画

  • lucide-react
    • クリーンで統一感のある美しいSVGアイコンセット。軽量でTailwindとの組み合わせも抜群。
  • recharts
    • React向けに作られたグラフ描画ライブラリ。コンポーネントベースで、給油履歴や燃費推移のチャートを直感的に実装できた。

🚀 最後に

「毎回の給油記録を、1秒でも短く、もっと手軽にしたい」という自分の不満から生まれたアプリである。手入力ならログインなしで触れるし、1回だけ計算したいなら計算ツールで足りる。

満タン法 燃費計算ツール | FuelLens
走行距離と給油量を入れるだけで、満タン法の燃費(km/L)をすぐに計算。支払総額からガソリン単価(円/L)と1kmあたりの燃料費も出せます。正しい測り方のコツやよくある間違いも解説。登録不要・無料。

写真で記録したい人は、次の給油のときにレシートとメーターを並べて撮ってみてほしい。

\FuelLensを今すぐ試してみる/
FuelLens
ガソリン代と燃費をスマートに管理

コメント

タイトルとURLをコピーしました