# Muning Menu Recommender

Aplikasi rekomendasi menu kafe Muning Kofie Kediri menggunakan AI dan OCR technology.

## 🚀 Fitur Utama

- **OCR Menu Recognition**: Scan foto menu menggunakan Google Vision OCR
- **AI-Powered Recommendations**: Rekomendasi personal menggunakan Gemini AI
- **User Preferences**: Sistem preferensi pengguna yang komprehensif
- **Firebase Integration**: Autentikasi dan database real-time
- **Chat Interface**: Tanya jawab dengan AI tentang menu
- **History & Favorites**: Riwayat rekomendasi dan favorit
- **Offline Support**: Cache data untuk penggunaan offline

## 🛠️ Tech Stack

- **Framework**: Flutter 3.8.1+
- **State Management**: Riverpod
- **Database**: Firebase Firestore + Hive (local)
- **Authentication**: Firebase Auth + Google Sign-In
- **AI/ML**: Google Gemini AI + Google ML Kit OCR
- **UI**: Material Design 3 dengan custom theme

## 📱 Screenshots

[Screenshots akan ditambahkan setelah implementasi UI selesai]

## 🔧 Setup & Installation

### Prerequisites

1. Flutter SDK 3.8.1 atau lebih baru
2. Dart SDK
3. Android Studio / VS Code
4. Firebase account
5. Google Cloud account (untuk Gemini AI)

### Environment Variables

Buat file `.env` di root project:

```env
GEMINI_API_KEY=your_gemini_api_key_here
GOOGLE_SIGN_IN_CLIENT_ID=your_google_client_id_here
```

### Firebase Setup

1. Buat project baru di [Firebase Console](https://console.firebase.google.com)
2. Enable Authentication (Email/Password & Google)
3. Enable Firestore Database
4. Enable Firebase Messaging
5. Download `google-services.json` dan letakkan di `android/app/`
6. Download `GoogleService-Info.plist` dan letakkan di `ios/Runner/`

### Installation Steps

1. Clone repository:
```bash
git clone https://github.com/your-username/muning-menu-recommender.git
cd muning-menu-recommender
```

2. Install dependencies:
```bash
flutter pub get
```

3. Generate Hive adapters:
```bash
flutter packages pub run build_runner build
```

4. Run the app:
```bash
flutter run
```

## 🏗️ Architecture

```
lib/
├── core/
│   ├── config/          # App configuration
│   ├── constants/       # App constants
│   └── theme/          # App theme & styling
├── models/             # Data models
├── services/           # Business logic services
├── screens/            # UI screens
│   ├── auth/          # Authentication screens
│   ├── home/          # Home screen
│   ├── camera/        # Camera & OCR screens
│   ├── recommendation/ # Recommendation screens
│   ├── history/       # History screens
│   └── profile/       # Profile screens
└── main.dart          # App entry point
```

## 🧪 Testing

### Unit Tests
```bash
flutter test
```

### Integration Tests
```bash
flutter drive --target=test_driver/app.dart
```

### Testing Strategy

- **Black Box Testing**: Equivalence Class Partitioning (ECP), Boundary Value Analysis (BVA), Decision Table
- **SUS Questionnaire**: System Usability Scale integration
- **Performance Testing**: CPU usage (target: 20-36%), FPS (target: 66+)

## 📊 Performance Metrics

- **Target CPU Usage**: 20-36%
- **Target FPS**: 66+
- **OCR Accuracy**: >90%
- **AI Response Time**: <3 seconds
- **App Launch Time**: <2 seconds

## 🔒 Security & Privacy

- Data encryption in transit dan at rest
- GDPR compliance untuk data handling
- Secure API key management
- User consent untuk data collection

## 🚀 Deployment

### Android APK
```bash
flutter build apk --release
```

### Android App Bundle
```bash
flutter build appbundle --release
```

### iOS
```bash
flutter build ios --release
```

## 🤝 Contributing

1. Fork the project
2. Create feature branch (`git checkout -b feature/AmazingFeature`)
3. Commit changes (`git commit -m 'Add some AmazingFeature'`)
4. Push to branch (`git push origin feature/AmazingFeature`)
5. Open Pull Request

## 📝 License

This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.

## 👥 Team

- **Developer**: [Your Name]
- **UI/UX Designer**: [Designer Name]
- **Project Manager**: [PM Name]

## 📞 Support

Untuk pertanyaan atau dukungan:
- Email: support@muningkofie.com
- WhatsApp: +62xxx-xxxx-xxxx
- Website: https://muningkofie.com

## 🙏 Acknowledgments

- Muning Kofie Kediri untuk kolaborasi
- Google untuk ML Kit dan Gemini AI
- Firebase untuk backend services
- Flutter team untuk framework yang amazing

---

**© 2024 Muning Kofie Kediri. All rights reserved.**



