Giter Site home page Giter Site logo

deepcook's Introduction

DeepCook Meal Suggestion Engine

DeepCook is a Python program that randomly suggests ideas to prepare for dinner, so you can have Class with Zero Strain.

DeepCook, developed by ABN electronics was the first computer to defeat a human competitor in MasterChef.

-- Neria Baris

Feel free to help in anyway you wish, even adding more meals, recipe suggestions, etc.

Description

Background

I love cooking but I also hate deciding what to make for middle-week dinners. Hence, this project was born. It is supposed to randomly give a suggestion for a meal to prepare for dinner. I created a meal database (saved in the data/meal_list.csv file) and added some features to each meal. Each idea is a meal I found that worked for me and my family, or something I wanted to try but never had the chance. Every meal is ranked according to my own preferances.

Fun fact: I am a crazy person who develops in vim...

Features

Currently, the main enegine will randomly choose a meal from data/meals_list.csv. There are already several option implemented accessible by running main --help.< describe the different options implemented and how the choice is done, too_late() etc. >

Currently ranking is only based on my own preferences for meals, but in the future a quick reranking option will be added, also an easy meal insertion to the db will be implemented.

< one day, here you, brave reader, will find a thorough and in-depth description of this project >

Getting Started

Dependencies

Python3.9 was used for development, I believe that any Python3 version will be compatible.

See the requirements.txt for the dependencies.

Installing

Just run and all will be good.

pip install -r requirements.txt

Executing Program

Initially one should run the reboot_timestamps.py script to reset all timestamps.

To generate a random meal idea run:

python main.py

This will prompt the user with a suggestion and asking if he will make it, if the user answers y then the meal is logged.

Help

In order to read the help section run (which is a fun bonus of implementing a cli), this will also give you current CLI methods implemented.

python main.py --help

There are no known issues, but the program is not really in any mature phase, and testing was done on-the-fly as I was writing the code. This is a terrible practice and should not be dont by anyone. Since I am not a programmer, just a computational chemsit / theoretical biophysicist no one holds me accountable for anything related to code.

Contributions

Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change. Also, don't forget to update the changes in the CHANGELOG.md file.

Please make sure to write tests as appropriate, I (Avishai) didn't do the proper and appropriate work so there are currently no tests.

Please don't hesitate to open an issue or pull request. You can also send me a message on Twitter.

Author

Contributors names and contact info

Avishai Barnoy @avishai231

License

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

deepcook's People

Contributors

avishaibarnoy avatar dependabot[bot] avatar baruchiro avatar

Stargazers

Felipe avatar Amit Ashdot avatar Yishay Mendelsohn avatar Soof Golan avatar Zion Amsalem avatar  avatar  avatar Miller Oleg avatar Ehud Tamir avatar Dean Langsam avatar

Watchers

James Cloos avatar  avatar

Forkers

baruchiro

deepcook's Issues

add pre-commit formatter

Currently there is no standardization for code writing format, so we need to add one. The best way is to start with any new added code. The easiest way I know is by using pre-commit . Updating requirements.txt will also be needed, but isn't as important as actually adding the standard.

Back formatting the existing code is important but can be done later when the code standard has been decided.

For more information about pre-commit look here: https://pre-commit.com

Avishai

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.