Skip to content

This repository hosts a group project for the GNG5300[A] course at the University of Ottawa, completed during Fall 2024.

License

Notifications You must be signed in to change notification settings

uocli/RecipeMate

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Recipe Mate

Recipe Mate is a powerful, AI-driven recipe generator designed to create personalized meal plans and grocery lists based on users’ dietary preferences and available ingredients.

Features

  • 🥘 Personalized Recipes: Generate recipes based on dietary preferences and available ingredients.
  • 🛒 Grocery List Generation: Automatically create grocery lists for selected recipes.
  • 🤖 AI-Powered Recommendations: Use generative AI to suggest meals tailored to users’ needs.
  • 📱 Responsive Design: Accessible on both desktop and mobile devices.
  • 🔒 Secure User Authentication: Sign up or log in to manage recipes and meal plans.

Technologies Used

  • Frontend: React.js with Material UI for styling.
  • Backend: Django REST Framework for API development.
  • Database: PostgreSQL for efficient data storage.
  • AI Integration: Powered by generative AI for recipe creation.
  • Deployment: Hosted on Heroku.

Getting Started

Prerequisites

  • Node.js and npm
  • Python 3.x

Installation

  1. Clone the repository:

    git clone https://github.com/uocli/RecipeMate.git
    cd RecipeMate
  2. Set up the backend (Django):

     cd backend
     python -m venv venv
     source venv/bin/activate  # For Windows: venv\Scripts\activate
     pip install -r requirements.txt
     python manage.py migrate
     python manage.py runserver
  3. Set up the frontend (React):

    cd ../frontend
    npm install
    npm build
  4. Open http://localhost:8000 in your browser to view the app.

Usage

  1. Sign up or log in to your account.
  2. Input your available ingredients or dietary preferences.
  3. Browse and select recipes from the generated list.
  4. Generate a grocery list for selected recipes.
  5. Optionally, arrange grocery delivery.

Project Structure

RecipeMate/
├── backend/
│   ├── manage.py
│   ├── settings.py
│   ├── models.py
│   └── ...
├── frontend/
│   ├── src/
│   │   ├── components/
│   │   └── App.js
│   └── package.json
└── README.md

Contributing

We welcome contributions! Follow these steps to contribute:

  1. Fork the repository.
  2. Create a new branch (git checkout -b feature-name).
  3. Make your changes and commit them (git commit -m 'Add feature').
  4. Push to the branch (git push origin feature-name).
  5. Open a pull request.

License

This project is licensed under the MIT License.

Contact

For any inquiries or feedback, please contact the team members or create an issue on GitHub.

GitHub Issues: Create an issue

Our Development Team:

Name Email
Mingzhao [email protected]
Xinye [email protected]
Pouria [email protected]
Chenyang [email protected]

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •