FLUTTER ECOSYSTEM

sbugrayy/Saglikla-App

基于人工智能的糖尿病和乳糜泻管理健康伴侣。功能包括通过 OpenFoodFacts 扫描条形码、使用 Gemini 进行视觉食物分析,以及基于 Flutter 和 Firebase 构建的个性化营养追踪。

Saglikla-App 项目封面
Stars
3
Forks
0
最近推送(UTC)
2025年12月21日
项目状态
未归档
Buğra Yıldırım GitHub avatar
GITHUB User

Buğra Yıldırım ↗

语言DartC++CMakeSwiftHTMLCKotlinObjective-C

技术话题

使用的依赖

依赖清单 22 项

原始 README

以下为英文项目原文快照,最新内容请访问 GitHub。

展开 / 收起项目 README

🏥 Sağlıkla App

Diyabet ve Çölyak Hastaları İçin Yapay Zeka Destekli Sağlık Asistanı

Flutter Firebase Gemini AI


📱 Proje Tanıtımı

Sağlıkla, diyabet (Tip 1 & 2) ve çölyak hastalarının günlük yaşamlarını kolaylaştırmak için geliştirilmiş, yapay zeka destekli kapsamlı bir sağlık yönetim uygulamasıdır.

Bu uygulama sadece kalori saymaz; yediğiniz besinlerin sağlık durumunuza (diyabet, çölyak vb.) etkisini analiz eder. Gemini AI ve OpenFoodFacts entegrasyonu sayesinde ürünlerin barkodlarını tarayabilir veya fotoğraflarını çekerek besin değerlerini ve risk analizlerini anında görebilirsiniz.

📸 Uygulama Görüntüleri
Giriş Ekranı Kişiselleştirme Ana Panel
https://raw.githubusercontent.com/sbugrayy/Saglikla-App/HEAD/assets/screenshots/login_screen.png https://raw.githubusercontent.com/sbugrayy/Saglikla-App/HEAD/assets/screenshots/personalization_screen.png https://raw.githubusercontent.com/sbugrayy/Saglikla-App/HEAD/assets/screenshots/dashboard_screen.png
Kullanıcı Girişi Hastalık Seçimi & Ayarlar Günlük Özet & Kalori Takibi
Sıvı Takibi Doktor & Tahlil Sonuçları Profil (Koyu Mod)
https://raw.githubusercontent.com/sbugrayy/Saglikla-App/HEAD/assets/screenshots/hydration_screen.png https://raw.githubusercontent.com/sbugrayy/Saglikla-App/HEAD/assets/screenshots/doctor_results_screen.png https://raw.githubusercontent.com/sbugrayy/Saglikla-App/HEAD/assets/screenshots/profile_dark_mode.png
Su & Elektrolit İzleme Tahlil Yükleme & Arşivleme Kullanıcı Profili & Ayarlar

🚀 Project Overview (English)

This application bridges the gap between raw nutritional data and actionable health insights. Unlike standard calorie trackers, HealthScan creates a correlation between what you eat and your specific health condition.

✨ Key Features
  • 🔍 Smart Barcode Scanning: Instantly detects products using OpenFoodFacts.
  • 🤖 AI-Driven Analysis:
    • Vision Fallback: If a barcode isn't found, the app uses Google Vision/Gemini to analyze the product packaging visually.
    • Safe-to-Eat Logic: Cross-references ingredients with the user's condition (e.g., flagging hidden gluten for Celiacs or high glycemic index items for Diabetics).
  • 🍎 Intelligent Meal Tracking: Estimate calories and carb counts from natural language descriptions.
  • 💧 Hydration Tracking: Monitor daily water intake and electrolyte balance.
  • 📂 Health Archives: Securely store and organize doctor results and analysis files.

🏗️ Architecture & Component Correlation

The project is built on a service-oriented architecture to ensure separation of concerns while maintaining tight integration between AI and User Data.

🔄 The "Brain" of the App: AIDecisionService

This is the central nervous system. It connects multiple entry points to the Gemini API:

  1. Scanner Interceptor: When ScannerScreen scans a product, AIDecisionService takes the ingredients list + User Profile (fetched via UserService) to generate a custom risk assessment.
  2. Vision Pipeline: In ManualEntryScreen or failed scans, it processes raw images to extract nutritional values.
  3. Chatbot Context: It feeds daily consumption logs (from NutritionService) into the chat context.
🛠️ Service Layer
  • UserService: Manages Firestore profiles. Critical for determining which rules the AI uses (Diabetes Type 1 vs 2, Insulin Ratios, etc.).
  • NutritionService: Handles the CRUD operations for meal logs.
  • ProductService: The gateway to OpenFoodFacts.

⚡ Setup & Security

This project uses Environment Variables to secure sensitive API Keys.

1. Prerequisites
  • Flutter SDK (3.9.x or higher)
  • Firebase Project setup
2. Environment Configuration (Crucial!)

The app will not run without valid API keys.

  1. Create a .env file in the root directory.
  2. Add your keys:
    GOOGLE_GEMINI_KEY=your_gemini_key_here
    GOOGLE_VISION_KEY=your_vision_key_here
    
3. Running the App
# Get dependencies
flutter pub get

# Run on emulator/device
flutter run