Skip to content

A smart Fridge system that leverages AI to identify food items, log it, give information about it, reorder if need be, give recipe recommendations, etc.

Notifications You must be signed in to change notification settings

jaden530/smart-fridge-project

Repository files navigation

# Smart Fridge Project

A sophisticated kitchen management system that uses AI and computer vision to track inventory, suggest recipes, monitor nutrition, and prevent food waste.

## Features

- 🎯 **Inventory Management**: Automatic tracking of food items using computer vision
- 🍳 **Recipe Suggestions**: Smart recipe recommendations based on available ingredients
- 📊 **Health Tracking**: Monitor nutritional intake and progress towards health goals
- ♻️ **Waste Prevention**: Track expiration dates and get alerts for at-risk items
- 🔍 **Advanced Recipe Search**: Filter recipes by dietary restrictions, cooking time, and difficulty
- 🤖 **AI-Powered Assistant**: Chat with an AI kitchen assistant for cooking advice and help
- 📈 **Analytics**: Visual reports of inventory trends and nutritional data

## Prerequisites

- Python 3.9 or higher
- PostgreSQL (optional, SQLite is used by default)
- OpenCV for computer vision
- FFmpeg for audio processing

## Installation

1. Clone the repository:
```bash
git clone https://github.com/yourusername/smart-fridge-project.git
cd smart-fridge-project
  1. Create and activate a virtual environment:
python -m venv .venv
source .venv/bin/activate  # On Windows use: .venv\Scripts\activate
  1. Install required packages:
pip install -r requirements.txt
  1. Create a .env file in the project root with the following keys:
SPOONACULAR_API_KEY=your_spoonacular_api_key
DATABASE_URL=sqlite:///smartfridge.db  # Or your PostgreSQL URL
SECRET_KEY=your_secret_key_here
OPENAI_API_KEY=your_openai_api_key
NUTRITIONIX_APP_ID=your_nutritionix_app_id
NUTRITIONIX_API_KEY=your_nutritionix_api_key

Running the Application

  1. Initialize the database:
flask db upgrade
  1. Run the application:
flask run

The application will be available at http://localhost:5000

API Keys Required

This project uses several external APIs. You'll need to obtain API keys from:

Default Login

A test user is created automatically with these credentials:

  • Username: testuser
  • Password: testpassword

Project Structure

smart-fridge-project/
├── src/
│   ├── ai/
│   ├── camera/
│   ├── core/
│   ├── inventory/
│   ├── recipes/
│   ├── health/
│   └── waste_prevention/
├── static/
├── templates/
├── requirements.txt
└── main.py

Features in Detail

Inventory Management

  • Real-time tracking of food items
  • Automatic detection using computer vision
  • Expiration date tracking
  • Category-based organization

Recipe Management

  • Recipe suggestions based on available ingredients
  • Dietary restriction filters
  • Difficulty levels and cooking time estimates
  • Nutritional information

Health Tracking

  • Daily nutritional intake monitoring
  • Progress towards health goals
  • Visual nutrition reports
  • Custom goal setting

Waste Prevention

  • Expiration alerts
  • Smart usage suggestions
  • Inventory optimization
  • Food waste tracking

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

Known Issues

  • FFmpeg warning on startup can be ignored if you're not using audio features
  • Local image paths need to be adjusted based on your system

Future Development

Planned features include:

  • Voice control system
  • Multi-user family management
  • Smart leftover tracking
  • Cost management system
  • Mobile application integration

License

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

Acknowledgments

  • Uses YOLOv3 for object detection
  • OpenAI's GPT models for AI assistance
  • Spoonacular API for recipe data
  • Nutritionix API for nutritional information

Support

For support, please open an issue in the GitHub repository.

Security

Please note that this project is for educational purposes. In a production environment, additional security measures should be implemented.

About

A smart Fridge system that leverages AI to identify food items, log it, give information about it, reorder if need be, give recipe recommendations, etc.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published