therajtiwari / Agli-Thali

An Indian Food Recommendation system that recommends Top 10 dishes based on the selected dish

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

logo

AgliThali- An Indian Food Recommender

General info

  • Recommends Top 10 Indian Dishes based on the input of the user using Cosine similarity algorithm
  • User can filter the dishes based on the diet type (veg/ non-veg), state and region
  • Displays a brief summary of the dish along with the recipe link

Technologies

Project is created with:

  • Python
  • Numpy
  • Pandas
  • Seaborn
  • Flask
  • HTML,CSS
  • Bootstrap

Dataset used

Indian Food 101

Project Structure

This project has four major parts :

  1. model.ipynb - This contains code fot our Machine Learning model to recommend the dishes using tha data in 'cleaned_data.csv' file.
  2. application.py - This contains Flask APIs that receives employee details through GUI or API calls, computes the recommended dish based on our model and returns it.
  3. utils.py - This contains the all the functions used in application.py to handle the requests that are made.
  4. templates - This folder contains the HTML template to allow user to select the dishes and filters and displays the recommended dishes.

Setting up a development environment and running the app

I assume that you have git and virtualenv installed.

#Clone the code repository into ~/dev/my_app
mkdir -p ~/dev
cd ~/dev
git clone https://github.com/therajtiwari/Indian_food_recommendation_system.git my_app

#Create the 'my_app' virtual environment
mkvirtualenv -p PATH/TO/PYTHON my_app

#Install required Python packages
cd ~/dev/my_app
workon my_app
pip install -r requirements.txt

#Run the app
PATH/TO/PYTHON application.py

Project Screenshots:

ss1

ss2

ss2

ss4

About

An Indian Food Recommendation system that recommends Top 10 dishes based on the selected dish


Languages

Language:Jupyter Notebook 93.9%Language:HTML 3.6%Language:Python 1.8%Language:CSS 0.7%Language:JavaScript 0.1%