Skip to content

akshat2635/CaloriePal

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🍏 CaloriePal (AI Calorie Counter)

License React Vite Python Tailwind CSS

A full-stack web application that leverages AI to help users seamlessly log food entries, track daily caloric intake, and gain personalized insights into their diet and progress.

📋 Table of Contents

📖 About the Project

Logging calories shouldn't be a chore. CaloriePal simplifies dietary tracking by combining an intuitive user interface with AI-powered food logging and insights. Whether you're trying to lose weight, maintain a healthy lifestyle, or track macros, CaloriePal provides dynamic dashboards, weekly progress charts, and smart logging capabilities to keep you on track.

✨ Key Features

  • 🧠 AI-Powered Insights: Smart analysis of your daily diet and tailored recommendations.
  • 📊 Interactive Dashboard: Visual progress tracking with concentric activity rings and weekly charts.
  • 🍔 Effortless Food Logging: Quick database search and intelligent entry parsing.
  • 🔐 User Authentication: Secure login and onboarding processes to safeguard user data.
  • 🌓 Dark/Light Mode: Built-in theme toggling for an optimal viewing experience.
  • 📱 Responsive Design: Seamless experience across mobile, tablet, and desktop devices.

🛠 Tech Stack

Frontend

  • Framework: React + Vite
  • Styling: Tailwind CSS
  • Routing: React Router
  • State Management: React Context API

Backend

  • Language: Python
  • API Framework: FastAPI / Flask (configurable via app/main.py)
  • Database: SQLite / PostgreSQL (managed via SQLAlchemy/similar ORM)
  • AI Integration: Custom AI services (calorie_service.py)

📂 Project Structure

ai_calorie_counter/
├── backend/
│   ├── app/
│   │   ├── api/          # API Route Controllers
│   │   ├── models/       # Database & Pydantic Schemas
│   │   ├── services/     # Business logic & AI Calorie Services
│   │   ├── auth.py       # Authentication utilities
│   │   ├── config.py     # Environment configuration
│   │   ├── database.py   # Database connection setup
│   │   └── main.py       # Application entry point
│   └── requirements.txt  # Python dependencies
└── frontend/
    ├── src/
    │   ├── components/   # Reusable UI components (Dashboard, Modals, etc.)
    │   ├── context/      # Global state (Auth, Theme)
    │   ├── pages/        # Application views (Login, Dashboard, Onboarding)
    │   ├── services/     # API request handlers
    │   ├── App.jsx       # Root component
    │   └── main.jsx      # React entry point
    ├── package.json      # Node.js dependencies
    ├── tailwind.config.js# Tailwind theme configuration
    └── vite.config.js    # Vite bundler config

🚀 Getting Started

Follow these instructions to get a copy of the project up and running on your local machine for development and testing purposes.

Prerequisites

Ensure you have the following installed on your system:

  • Node.js (v16+ recommended)
  • Python (v3.9+ recommended)
  • npm or yarn

Installation

  1. Clone the repository:

    git clone https://github.com/akshat2635/CaloriePal.git
    cd CaloriePal
  2. Setup the Backend:

    cd backend
    # Create a virtual environment
    python -m venv venv
    
    # Activate the virtual environment
    # On Windows:
    venv\Scripts\activate
    # On macOS/Linux:
    source venv/bin/activate
    
    # Install dependencies
    pip install -r requirements.txt
  3. Setup the Frontend:

    cd ../frontend
    # Install NPM packages
    npm install

💻 Running the Application

1. Start the Backend Server

Open a new terminal, activate your virtual environment, and run:

cd backend
python -m app.main

2. Start the Frontend Development Server

Open another terminal and run:

cd frontend
npm run dev

The frontend will be available at http://localhost:5173/ (or the port specified by Vite).

🤝 Contributing

Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

📄 License

Distributed under the MIT License. See LICENSE for more information.

About

An AI-powered full-stack health and nutrition tracking app. Built with React and FastAPI, it leverages natural language processing and image recognition (via the Groq API) to effortlessly log meals, calculate personalized macro targets, and visualize daily dietary progress through an interactive dashboard.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors