Skip to content

soneryesilay/CaloriLens

Repository files navigation

CaloriLens - AI Powered Nutrition Tracker

Snap. Analyze. Track. A modern Android application that uses Google's Gemini AI to recognize food from photos and track your daily nutrition intake instantly.

Project Overview

CaloriLens is a native Android application built demonstrating modern Android development practices. It leverages on-device CameraX for image capture and Cloud AI for image recognition to provide a seamless calorie tracking experience.

This project was built to showcase:

  • Integration of Generative AI (multimodal) in mobile apps.
  • Modern Android Architecture (MVVM, Unidirectional Data Flow).
  • Clean UI/UX implementation with Jetpack Compose.

Key Features

  • AI-Powered Food Recognition: Instantly identifies food items and estimates serving sizes using Gemini 2.5 Flash.
  • Real-time Analysis: Calculates macros (Calories, Protein, Carbs, Fat) on the fly.
  • Smart Viewfinder: Custom camera interface with smart cropping to focus on the food.
  • Daily Dashboard: Integrated calendar and progress rings to track daily goals.
  • Local Persistence: Saves full meal history locally using Room Database.
  • Premium UI: Dark mode support, smooth transitions, and glassmorphism elements.

Tech Stack

Screenshots

Camera AI Analysis Dashboard

Getting Started

Prerequisites

Setup

  1. Clone the repository:
    git clone https://github.com/soneryesilay/CaloriLens.git
  2. Configure API Key:
    • Create a file named .env in the root directory.
    • Add your API key:
      GEMINI_API_KEY=your_actual_api_key_here
  3. Build & Run:
    • Open the project in Android Studio.
    • Sync Gradle.
    • Run on an Emulator or Physical Device.

Architecture

The app follows Clean Architecture principles:

  • Data Layer: Repositories (FoodRepository, MealRepository) handle data fetching from AI and local DB.
  • Domain/UI Layer: ViewModels (FoodViewModel, LogViewModel) manage state and business logic.
  • UI: Composable functions rendering state (Success, Loading, Error).

License

This project is licensed under the MIT License - see the LICENSE file for details.


Developed by Soner Yesilay

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages