推しアイデア
資産形成支援では、NISA 積立や貯金目標を家計簿と同じ画 面で管理できるようにした
資産形成支援では、NISA 積立や貯金目標を家計簿と同じ画 面で管理できるようにした
一般的な家計簿アプリにはいくつかの課題がある。支出を毎回手入力する手間が大きいこと、家族 やパートナーなど複数人で家計を管理しにくいこと、収支管理と資産形成の機能が分かれていることである。これを解消したかった
入力作業の効率化で は、レシート画像や JAN バーコードを AI で解析し、入力の自動化を実現した
プロジェクト概要: 個人・グループ向けの家計簿・資産管理アプリ。フロントエンド(React/Vite)とバックエンド(Express/Prisma)を分離した三層構成で、収支記録・分析・レシートOCR・AIコーチングまで実装が進んでいる。 構成 フロントエンド(ルート直下): React 18 + TypeScript + Vite 6 + Tailwind v4。src/App.tsx を中心に、収支入力(TransactionForm)、サマリーカード、分析グラフ(recharts)、サブスク管理、貯金目標アシスタント、レシート/バーコードスキャナーUIをコンポーネント化。現状は localStorage に直接データを持つスタンドアロン動作で、バックエンドAPIへの接続はまだ配線されていない(モックデータ src/data.ts ベース)。 バックエンド(backend/): Express + TypeScript を Presentation / Application / Data の三層に分離。
presentation/routes — ルーティングのみ application/services — ビジネスロジック(transaction, analysis, ocr, coaching) data/repositories — Prisma経由のDBアクセス
DB: PostgreSQL + Prisma。モデルは User / Group / Transaction / Category / PaymentMethod / Subscription / SavingGoal / Tag・TransactionTag(多対多)で、設計仕様書セクション3をそのまま反映。
実装済みAPI POST/GET /transactions、DELETE /transactions/:id — 収支CRUD(仕様書どおり実装済み) GET /analysis/summary — カテゴリ別・支払い方法別集計(実装済み)。GET /analysis/forecast はまだ未実装(TODOコメントのみ) POST /ocr/receipt、POST /ocr/barcode — Gemini APIを使ったレシート解析・バーコード価格予測(gemini-client.ts 経由) POST /coaching — AI貯金コーチング(節約アドバイス・収支予測)。仕様書にない追加機能 GET /categories /payment-methods /users — フロント用のマスタ参照API(仕様書外の補助エンドポイント)