無料で使える家計簿アプリ「Money:G」を作りました!
みなさん、こんにちは!
Flutter初心者の私が約2ヶ月かけて開発した家計簿アプリ「Money:G」をご紹介します。
開発のきっかけ
突然ですが、みなさんは家計簿をつけていますか?
恥ずかしながら、私は一度もつけたことがありませんでした😅
最近の家計簿アプリを調べてみると、データがクラウドに送信されるものが多く、金融情報の取り扱いに不安を感じました。また、無料版では機能制限があったり、使いたい機能が有料だったりします。
そこで「完全にローカルで動作して、無料で全機能使える家計簿アプリがあったらいいな」と思い、Flutterの学習も兼ねて開発することにしました。
「Money:G」名前の由来
このアプリケーション名の由来はMoney(お金)とManage(管理)から語呂良くシンプルに考えた結果です。なんの捻りもないので聞かないでください。
「Money:G」の特徴とアーキテクチャ
「Money:G」の最大の特徴はプライバシーファーストの設計思想です。インターネット接続は一切不要で、利用者の金融データが外部に送信されることは絶対にありません。すべてのデータは端末内のSQLiteデータベース
で暗号化して管理しており、クラウド依存の不安から完全に解放されます。
技術面では、FlutterのMVVMアーキテクチャパターンを採用し、Provider
による状態管理で効率的なデータフローを実現しています。MaterialDesign 3
に基づいた美しいUIと、fl_chart
ライブラリによる直感的なデータ可視化で、家計簿アプリにありがちな「面倒くさい」という印象を払拭することを目指しました。
Money:GのUI
機能面では、基本的な収支管理はもちろん、CSVインポート機能により他アプリからのデータ移行が簡単に行えます。毎月のクレジットカード明細を手動入力する手間が大幅に削減され、実用性を重視した設計になっています。さらに、NISA投資管理機能も搭載しているため、最近やたらと注目されている資産形成も一元管理できるのが特徴です。
Money:GのCSVインポート機能
クロスプラットフォーム
当初はAndroid版のみでしたが、v1.2.2ではiOS版の初回リリースを達成しました。Flutterの強みを活かし、同一コードベースで両プラットフォームに対応しています。ただし、プラットフォーム固有の機能については、iOS版ではFiles統合やAirDropなどのネイティブ機能を活用しています。
v1.2.2
つい先日リリースしたv1.2.2
では、使い勝手を根本から見直しました。特に重要だったのが予算設定のリアルタイム反映問題の解決です。これまで設定変更が即座に画面に反映されない問題があったのですが、BudgetService
の完全リファクタリングにより、設定変更が瞬時に反映されるようになりました。
また、ユーザビリティの向上として、収入・支出リストでのスワイプ操作による編集・削除機能を実装しました。これにより、データの管理がよりスマートフォンらしい直感的な操作で行えるようになっています。さらに、月次レポートを円グラフから棒グラフ表示に変更し、収入と支出の比較がより分かりやすくなりました。
細かな点では、アプリ起動時のスプラッシュスクリーンを追加し、プロフェッショナルな印象を与える起動体験を実現しています。
Money:Gスプラッシュスクリーン
OSSで公開中
このプロジェクトはMIT Licenseでオープンソース公開しており、商用利用・改変は完全自由です。バグ報告や機能要望はもちろん、プルリクエストやコードレビューも大歓迎です。
「こんな機能があったらいいな」「ここが使いにくい」といったご意見は、GitHub Issuesでお気軽にお聞かせください。特に家計簿を実際に使われている方からの実用的なフィードバックは、開発の方向性を決める上で非常に貴重なので是非よろしくお願いします。
ダウンロードとセットアップ
Android版はAPKファイルを直接インストールするだけで利用開始できます。iOS版はXcode環境が必要ですが、ソースコードと詳細なインストール手順を提供しています。
セットアップは特に複雑な設定は不要で、インストール後すぐに利用開始できます。通知権限を許可していただければ、予算超過アラートなどの便利機能もご利用いただけます。
まとめ
プライバシーを重視しながら高機能で実用的な家計簿アプリをお探しの方に、ぜひ一度お試しいただきたいアプリです。Flutter初心者の学習成果物ではありますが、実際の家計管理で使えるレベルの機能を目指して開発しました。対戦よろしくお願いします。
🔗 リンク
Discussion