An intelligent generator of well-balanced meals.
GPL-3.0 License
MenuGen is a school project that solves an eternal issue : What are we going to eat tonight?
To solve this issue, MenuGen asks you a few questions about your morphology, your food tastes and allergies or diets, before generating well-balanced meals for the next week!
First, we setup MenuGen:
PostGreSQL
database and wait for usersThen, when you want to generate a meal:
For now there is no hosted instance of MenuGen. If you want to run it on your machine, follow these steps:
Install the following packages: python3 python3-pip
Then run from the root of the project:
sudo pip install virtualenv
virtualenv -p python3 .venv
source .venv/bin/activate
pip install -r requirements.txt
To disable the python virtual environment, run deactivate
cd application
Install Bower + Grunt:
npm install -g grunt-cli bower
Install Assets:
npm install && bower install
Compile Assets:
grunt
Initialize and configure the development database:
./manage.py makemigrations
./manage.py migrate
Create your super user:
./manage.py createsuperuser
First check if you're using the virtualenv. If not, run
source .venv/bin/activate
Then you can run the server with
./manage.py runserver
When models are edited, you must compute the necessary migrations from your database state, then migrate with
./manage.py makemigrations
./manage.py migrate
Load initial data (so far the ingredients):
./manage.py loaddata initial_data
Note: initial_data is reloaded every migration
Create a fixture (snapshot from the data currently in the database):
./manage.py dumpdata > menus/fixtures/myfixture.json
Load a fixture:
./manage.py loaddata myfixture
Fill ingredients directly from the csv:
./manage.py fill_db