スーパーの買い物が面倒すぎて、アプリを作ってGoogle Playに公開した話
毎週スーパーに行くたびに、同じことを繰り返していました。スマホのメモアプリで買うものを確認して、電卓で合計を計算して、予算を超えそうになったら何を諦めるか悩む。正直、めんどくさい。
だったら自分で作ろう、と思って開発したのが「まいカゴ」という買い物リストアプリです。Google Playで公開しています。
https://play.google.com/store/apps/details?id=com.ikcoding.maikago&hl=ja
■ できること
特徴は3つ。
まず、カメラで値札を撮るだけでAIが商品名と税込価格を読み取って、リストに自動追加してくれます。手入力は不要。カゴに入れる感覚でどんどん記録できます。
次に、合計金額のリアルタイム表示。個数変更や割引もすぐ反映されるので、レジに行く前に「あ、超えてる」と気づける。
最後に、複数店舗のタブ管理。店舗ごとにリストと予算を分けられるので、スーパーとドラッグストアを買い回りするときも、タブを切り替えるだけで全体が把握できます。
■ 使った技術
フレームワークはFlutter。iOS・Android・Webの3プラットフォームに対応しています。個人開発でマルチプラットフォームをやるなら、現実的にFlutter一択でした。
バックエンドはFirebase。データベースにFirestore、サーバー処理にCloud Functionsを使っています。値札の読み取りはGoogle Cloud Vision APIとChatGPTを組み合わせて、日本のスーパーの値札フォーマットに最適化しました。APIキーがアプリ側に露出しないよう、AI処理はすべてCloud Functions経由です。
開発期間は約8ヶ月。コミット数560以上、Dartファイル137個、コード量は約27,000行。CI/CDはCodemagicとGitHub Actionsで自動化しています。
■ 正直に言うと
ダウンロード数は24件。PMF(プロダクト・マーケット・フィット)には全然届いていません。
これは結構こたえました。でも、だからこそ気づけたことがあります。
「技術的に作れること」と「人に使ってもらえること」は全然違う。機能をどれだけ積んでも、それだけでは使ってもらえない。誰の、どんな困りごとを解決するのか。どうやって届けるのか。その解像度が足りていなかった。
一方で、もう1つの個人開発アプリ「Roast Plus」は、職場のコーヒー豆製造現場で8名が毎日使ってくれています。こっちは最初から「目の前にいる人の困りごと」から作り始めた。だから定着した。シンプルにそういうことだと思います。
2つのアプリで、うまくいったものと、いかなかったもの。両方やったからこそ、「課題が先、技術は手段」という言葉が自分の中でちゃんと意味を持つようになりました。
■ これから
今、エンジニアへのキャリアチェンジを目指しています。個人開発で関わった一連の工程——課題を見つけて、設計して、実装して、リリースして、改善する——を、次はチームの中でやってみたい。そう思っています。
最後まで読んでいただき、ありがとうございました。