I originally built this project for personal use and never shared it anywhere outside of GitHub. Recently, I’ve noticed people showing interest and starring the repo and forking.
I’m curious — how did you all discover this project?
I’m planning to fix some existing issues, especially around the AI agent. If you’re using the app, feel free to share feedback or suggestions!
NomAI is an open-source Flutter app that helps you track meals, analyze nutrition, and get AI-powered guidance tailored to your goals. It combines quick logging, powerful analytics, and a friendly chat interface to make healthy eating simple and sustainable.
Built with Python, FastAPI, Gemini, PydanticAI, Supabase, OpenAI, Flutter, and Firebase, NomAI works on both iOS and Android.
Backend Repo: https://github.com/Pavel401/NomAI
Note: This project is actively evolving. Contributions are welcome!
- Meal logging with nutrition breakdowns (calories, protein, carbs, fat, water)
- AI chat assistant for meal analysis, planning, and healthy tips
- Monthly analytics: charts, daily breakdown, summary stats
- Goals and personalization (dietary preferences, allergies, targets)
- Image upload and recognition to speed up logging
- Social sharing of meals and achievements
- Modern, responsive UI with smooth interactions
Below is a gallery of the current screenshots in static/screenshots/.
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
- Android (APK): see the Releases tab
- iOS: TestFlight link (if available)
If you haven’t published builds yet, you can run locally by following the setup instructions below.
- Flutter 3.35.x (Dart 3)
- Firebase (Auth, Firestore, Storage, Remote Config)
- AI backend (FastAPI/Python) with provider integrations (OpenAI, Gemini)
See full app dependencies below and in pubspec.yaml.
- Repository: https://github.com/Pavel401/NomAI
- Default API base URL (configurable):
https://nomai-production.up.railway.app- Change in
lib/app/repo/agent_service.dart
- Change in
Core
UI & UX
- sizer
- fl_chart
- flutter_markdown
- cached_network_image
- photo_view
- lottie
- percent_indicator
- linear_progress_bar
- flutter_svg
- flutter_bounceable
- flutter_easyloading
- material_symbols_icons
Media & Sharing
Firebase
Utilities
- intl
- logger
- icons_launcher
- change_app_package_name
- smooth_page_indicator
- timeline_date_picker_plus
- google_fonts
- google_sign_in
- shared_preferences
- camerawesome
Dev (build/test/tools)
lib/app/modules/...contains feature modules (Home, Chat, Analytics, Scanner, Settings)flutter_blocfor authentication/user data flows;GetXfor some controllers (e.g., scanner, chat)Firebasestores users, nutrition records, and computed monthly analytics- AI chat backed by a lightweight HTTP API
Key files:
- Chat view:
lib/app/modules/Chat/Views/chat_view.dart - Analytics view:
lib/app/modules/Analytics/views/analytics_view.dart - Home view:
lib/app/modules/Home/views/home_view.dart - Scanner controller:
lib/app/modules/Scanner/controller/scanner_controller.dart - Agent service (AI backend):
lib/app/repo/agent_service.dart
- Flutter 3.35.0 (FVM optional)
- Firebase project (Android + iOS apps)
- Optional: A running AI backend for chat (HTTP API)
- Clone and fetch packages
git clone
cd MealAI
# With FVM (recommended to match exact version)
fvm install 3.35.0
fvm flutter pub get
# Or with system Flutter 3.35.x
flutter pub get
- Firebase configuration
- Android: add your
google-services.jsontoandroid/app/ - iOS: add your
GoogleService-Info.plisttoios/Runner/ - Ensure your Firebase project has Authentication, Firestore, and Storage enabled
- Configure AI backend (optional, required for chat)
- Update the base URL in
lib/app/repo/agent_service.dart:
static const String _baseUrl = 'https://your-backend.example.com';
- Run the app
# With FVM
fvm flutter run
# Or with system Flutter
flutter run
# Android APK
flutter build apk --release
# iOS
flutter build ios --release
Optional assets tooling:
- App icons:
dart run icons_launcher:create - Splash screen:
dart run flutter_native_splash:create
lib/
app/
components/ # Reusable UI components
constants/ # Colors, theme, constants
models/ # Data models (Auth, Agent, AI)
modules/
Home/
Chat/
Analytics/
Scanner/
Settings/
repo/ # Firebase and agent service repositories
services/ # Domain services
utils/ # Utilities/helpers
assets/
png/ # Logo and images
svg/ # SVGs
static/
screenshots/ # Add app screenshots for README


















