** There are 173278 recipes in the database (got it from https://github.com/fictivekin/openrecipes) **
### ObjectiveHow often do we find ourselves constantly checking the fridge to see whats inside? How often do we end up discarding forgotten food from our fridge or finding out that we are out of eggs or milk? We decided to create a solution to this problem by implementing a Smart Refrigerator. Our solution keeps track of the Refrigerator's inventory via QR code scanning of items placed in the fridge. In addition the application is able to recommend recipes based on the fridge's inventory using data mining. In addition we utilized the HAVENONDEMAND Machine Learning API to perform sentiment analysis on food recipe reviews.
We created a web application to display the contents of the fridge and the suggested recipes as well as adapted open source code for Qr scanning and sending JSON to our database.
- Generate QR code with JSON object that have property
name
,added_date
andexpired_date
- Mining data against 173278 recipes in the database and recommend the most highest score (createIndexes) based on name textScore
- Each recipe come with url to the review and content website. We scrap all the content (except html tag) from the url and feed to the Havenondemand sentimental analysis API. This gives sentiment either
positive
ornegative
and the score is range from 0 to 1. The range is then used to generate from 1 to 5 stars as shown in the image above.
- Twilio API to send text when foods is almost expired or amount less than x days.
- Smarter machine learning algorithms to learn users cooking pattern
- Allow users to like/favorite recipes
- User account
- Node.js - Evented I/O for the backend
- Expressjs - Framework used to build the REST-based backend
- Havenondemand machine learning API - sentimental analysis
- jQuery - Make life easy
- Mongodb - database
- download recipes database https://github.com/fictivekin/openrecipes
- load recipes to Mongodb:
mongoimport --db test --collection recipes --drop --file recipeitems-latest.json
- load fridge data:
mongoimport --db test --collection fridge --drop --file fridge.json
npm install
npm run