モバイルアプリ
FoodHub — フードデリバリーアプリ
顧客・店舗・配達員の3ユーザータイプに対応したフードデリバリーFlutterアプリ。
JWT認証・Stripe決済・注文追跡・Riverpod状態管理で構成。
Duration
中〜長期開発
Team
1〜2名
Engineered With FlutterDartNode.jsMySQLStripe
01 // OVERVIEW
プロジェクト概要
顧客・レストラン・配達員の3ユーザータイプを持つフードデリバリーモバイルアプリ。
FlutterとNode.js(Express)で構成し、JWT認証・Stripe決済・リアルタイム注文ステータス追跡・クーポン適用・レビュー投稿を実装。
状態管理はRiverpodを採用し、MySQLの11テーブルで注文・ユーザー・メニューを管理する。
02 // KEY FEATURES
主な機能
restaurant
3ユーザータイプの役割分担
顧客(注文・追跡・レビュー)・レストラン(注文受付・ステータス管理・メニュー編集・売上統計)・配達員(受注・完了・履歴・統計)それぞれの専用ダッシュボードと機能を実装。
payments
Stripe決済とクーポン適用
Stripeによる決済統合とクーポンコードの検証・割引計算を実装。クーポンには有効期限・最低注文金額・使用回数制限を設定でき、チェックアウト画面から即時適用できる。
location_on
注文追跡とリアルタイムステータス
注文受付→調理中→準備完了→配達中→完了のステータスタイムライン表示と追跡画面を実装。配達員はオンライン/オフライン切替と日別統計確認ができる。
03 // TECHNICAL DEEP-DIVE
技術的ハイライト
Solution
3ユーザータイプ間の状態同期
Riverpodを使って注文ステータスの変更を各ユーザータイプの画面に反映する設計を採用。Node.js + MySQLのバックエンドでAPIを提供し、11テーブルのスキーマで関連エンティティを管理した。
04 // IMPACT & RESULTS
成果
3ユーザー
顧客・店舗・配達員のロールに対応
Stripe
決済統合とクーポン機能を実装
Riverpod
Flutterの状態管理に採用