No description
- JavaScript 81.3%
- SCSS 6.2%
- Less 5.9%
- CSS 5.7%
- Python 0.5%
- Other 0.4%
|
|
||
|---|---|---|
| static | Move dependencies into subfolder | |
| templates | Move dependencies into subfolder | |
| .gitignore | ignore __pycache__ | |
| config.ini | validate HTML server side; add configuration for allowed tags | |
| db.py | Disable inserting test data by default | |
| main.py | Make main.py executable | |
| README.md | More expansion ideas | |
Meals Unveiled
Meal planning aid by storing recipes and being able to automatically generate a grocery list for the meals you choose
Setup
Prerequisites:
- Flask (Python 3), tested on version 1.0 and (TODO which version did Mariana use?)
- MySQL connector, e.g.
mysql-connector-python-py3_8.0.33-1debian10_amd64.deb - MariaDB or MySQL database server
Installation:
- Configure the database connection in
config.ini - Run
main.py - Your setup is now fully functional! You can open it in your browser based on the values configured in
config.ini, by default: http://localhost:5000/
To generate some sample data, uncomment the line db.insert_test_data() in main.py and run the script again.
To run the service continuously on a server, a quick solution is to run it in a screen session (screen -S meals ./main.py).
More durable, to automatically start after a reboot, would be to create a system service for it.
Future ideas
- Instead of a checkbox, specify how many times you want to buy a certain meal/recipe, so you can easily double the portion size or eat it twice in the next week
- Different sort options for recipes (name, creation date (ID), random, maybe even custom per a field specified in the recipe), or being able to search for one
- Allow configuring the unit in recipes for newly added ingredients so that you don't have to visit the ingredients page separately to set that
- Login mechanism, recipe sharing between users
- Markdown support for descriptions, and/or a proper WYSIWYG editor maybe
- Actually make use of optional ingredients somehow, so that recipes can have things like olive oil and paprika powder even if you normally don't need to buy it
- Maybe having a section on the homepage where you can indicate "this ingredient is in my pantry already", to deduct it from the grocery list