KYC โ€“ Know Your Calories (Nutrition Tracker)

KYC - Know Your Calories app interface showing food tracking

KYC โ€“ Know Your Calories (Nutrition Tracker)

**KYC โ€“ Know Your Calories** is a robust **Android application** designed for effortless **nutritional tracking**. It offers real-time food data, convenient **barcode scanning**, and comprehensive logging capabilities, empowering users to make informed dietary choices and manage their health goals effectively.

โœจ Key Features & Health Tools

Real-time Nutrition Data

Integrates a powerful **Nutrition API** to instantly fetch detailed information on calories, macronutrients, and micronutrients for a vast food database.

Barcode Scanning

Effortlessly scan food packaging barcodes to get **instant nutritional breakdowns**, streamlining food logging.

Daily Calorie Log with Offline Support

Maintain a detailed daily calorie log with local persistence via **Room Database**, allowing offline tracking and historical data analysis.

Interactive Food Search & Filtering

Utilize an advanced food search with robust filtering and sorting options, making meal planning and food discovery simple.

Personalized Diet Tracking (Firebase)

Secure user authentication with **Firebase Auth** enables personalized diet tracking and data synchronization across devices.

Modern UI with Material3

Features a sleek and intuitive user interface built with **Jetpack Compose** and **Material3 theming**, supporting dark mode and enhanced accessibility.

// Kotlin: Example of fetching food data with Retrofit and sealed class for result handling
sealed class Result<T> {
    data class Success<T>(val data: T) : Result<T>()
    data class Error(val exception: Exception) : Result<T>()
}

interface NutritionApiService {
  @GET("food-details")
  suspend fun getFoodDetails(@Query("query") query: String): FoodResponse
}

๐Ÿ›  Robust Technology Stack

Frontend (Android)

Kotlin

Jetpack Compose

Material Design 3

Compose Navigation

Jetpack DataStore

Data & API Integration

Nutrition API (Real-time Food Data)

Retrofit (HTTP Client with Sealed Classes)

Room Database (Offline Data Persistence)

JSON (Data Serialization)

Authentication & UI/UX

Firebase Auth (User Authentication)

Barcode Scanner Library

Modern UI/UX Principles

Animated Transitions

Development Practices

Clean MVVM Architecture

Centralized Dependencies (`libs.versions.toml`)

Optimized for SDK 35

Error Handling Best Practices

๐ŸŽฏ Who It's For & Why You'll Love It

  • Health Enthusiasts: Ideal for anyone looking to track their diet, understand food intake, and manage calorie goals effectively.
  • Fitness Trainers & Nutritionists: A practical tool for clients to log their meals and gain insights into their eating habits.
  • Busy Individuals: Barcode scanning and quick search make logging food fast and convenient, even on the go.
  • Modern & Intuitive: Enjoy a smooth, responsive experience with a beautiful Material3 design and fluid animations.
  • Data-Driven Decisions: Leverage accurate, real-time nutritional data to make informed choices about your diet.
  • Reliable & Offline-Friendly: Your data is always accessible, even without an internet connection, thanks to Room Database.