{"id":15457005,"url":"https://github.com/darth-dodo/meal-helper","last_synced_at":"2026-02-06T11:39:24.708Z","repository":{"id":41925842,"uuid":"204117372","full_name":"darth-dodo/meal-helper","owner":"darth-dodo","description":"Meal Helper - Recipe and MealPlan Management System","archived":false,"fork":false,"pushed_at":"2022-12-08T06:42:07.000Z","size":6855,"stargazers_count":2,"open_issues_count":9,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-04-06T18:18:35.190Z","etag":null,"topics":["django","django-rest-framework","drf","grappelli","heroku","metabase","postgres","swagger"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/darth-dodo.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2019-08-24T06:16:36.000Z","updated_at":"2023-09-20T11:07:13.000Z","dependencies_parsed_at":"2023-01-24T17:00:17.576Z","dependency_job_id":null,"html_url":"https://github.com/darth-dodo/meal-helper","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/darth-dodo/meal-helper","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/darth-dodo%2Fmeal-helper","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/darth-dodo%2Fmeal-helper/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/darth-dodo%2Fmeal-helper/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/darth-dodo%2Fmeal-helper/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/darth-dodo","download_url":"https://codeload.github.com/darth-dodo/meal-helper/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/darth-dodo%2Fmeal-helper/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29159611,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-06T07:18:23.844Z","status":"ssl_error","status_checked_at":"2026-02-06T07:13:32.659Z","response_time":59,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["django","django-rest-framework","drf","grappelli","heroku","metabase","postgres","swagger"],"created_at":"2024-10-01T22:41:27.828Z","updated_at":"2026-02-06T11:39:24.691Z","avatar_url":"https://github.com/darth-dodo.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Meal Helper - Recipe and MealPlan Management System\n\n## Index\n- [Summary](#summary)\n- [Installation](#installation)\n- [Demo](#demo)\n- [API Documentation](#api-documentation)\n\n## Summary\nWeb application for tracking Recipes, Meals, MealPlans and Nutritional Information. Built using Django, Django REST Framework, Heroku, Metabase and Swagger\n\n---\n\n## Installation\n### Local instructions\n- Make sure you have a [Postgres](http://postgresguide.com/) version greater than 9.6\n- Clone the repo\n- Create your `.env` file by using `.env.example` as template and substituting values based on your environment\n- Use [Pyenv](https://github.com/pyenv/pyenv) to install and set Python to version 3.7.x\n- Run `pipenv install`\n- Activate the virtualenv using `pipenv shell`\n- Create development Postgres Database using the command `createdb meal_planner_db` and permissions for user as mentioned in the `meal_planner/settings/dev.py` eg.\n    - `$ createdb meal_planner_db`\n    - `$ psql -U \u003cuser\u003e or $ psql postgres`\n    - `# CREATE ROLE meal_planner_app WITH LOGIN PASSWORD 'your-awesome-password';`\n    - `# GRANT ALL PRIVILEGES ON DATABASE meal_planner_db TO meal_planner_app;`\n    - `# \\q`\n\n\n- Create a superuser using the command `python manage.py createsuperuser`\n- Run the local server using the command `python manage.py runserver`\n- Hop on to the site and go to `\u003cyour-localhost-with-port\u003e/admin`\n- Use the above credentials to log into the admin panel\n\n## Demo\n- The Backend sandbox can be accessed using Django Admin Panel and [Grappelli](https://django-grappelli.readthedocs.io/en/latest/index.html) at [https://meal-planner-hm.herokuapp.com/](https://meal-planner-hm.herokuapp.com/) with the following credentials:\n  - Username: admin@mp.com\n  - password: `yummytummy`\n- The MetaBase App can be accessed over at [https://meal-helper-metabase-demo.herokuapp.com/](https://meal-helper-metabase-demo.herokuapp.com/) using the following credentials:\n  - Username: admin@mp.com\n  - Password: `yummytummy1`\n- The Database Schema diagram can be found over [here](https://github.com/darth-dodo/meal-helper/blob/master/meal-planner-schema.png)\n  \n\n## API Documentation\n- [Interactive API Documentation generated using Swagger can be found here](https://meal-planner-hm.herokuapp.com/swagger-docs)\n- [API Documentation using the OpenAPI spec can be found over here](https://meal-planner-hm.herokuapp.com/api-docs)\n\n---\n\n## Implementation Choices\n- [Python3](https://docs.python.org/3/): Py2 is has reached EoL\n- [Pyenv](https://github.com/pyenv/pyenv): For multiple python env management\n- [Pipenv](https://pipenv-fork.readthedocs.io/en/latest/): For managing Pip files and environment variables \n- [Postgres](https://www.postgresql.org): Open Source RDBMS Version above 9 to use `jsonb` if required\n- [Django](https://docs.djangoproject.com/en/2.2/): Between Bottle, Flask and Django; Django provides a much richer ecosystem and helps the user hit the ground running much faster as compared to Flask. Django 2.2 offers LTS.\n- [Grappelli](https://django-grappelli.readthedocs.io/en/latest/index.html): Django Admin Panel replacement. Had to refactor from [Django Jet](https://github.com/darth-dodo/meal-helper/issues/9) as Jet is broken above Django 2.0\n- [Django REST Framework](https://www.django-rest-framework.org/): REST APIs with automagical CRUD and extendability\n- [DRF JWT](https://github.com/jpadilla/django-rest-framework-jwt): JWT for auth. Need to move towards [SimpleJWT](https://github.com/davesque/django-rest-framework-simplejwt)\n- [Django Debug Toolbar](https://django-debug-toolbar.readthedocs.io/en/latest/): More efficient debugging + power shell\n- [Django Query Count](https://github.com/bradmontgomery/django-querycount): Relatively obscure library which prints out all the queries that happen behind any API request. Helps find bottle necks and duplicated queries\n- [Raven/Sentry](https://sentry.io): Capture bugs and stack traces in non prod env\n- [Heroku](https://www.heroku.com): Smooth and feature rich PaaS which helps you focus on Dev without fretting a lot about DevOps\n- [UnitTest](https://docs.python.org/3/library/unittest.html): Unit Tests for Task 1 using UnitTest Library since it is the standard library and fits the needs for now\n- [Django Filter](https://django-filter.readthedocs.io/en/master/): Helps build custom filters which can be dropped in with DRF\n- [Swagger UI](https://django-rest-swagger.readthedocs.io/en/latest/): De facto API Documentation Tool\n \n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdarth-dodo%2Fmeal-helper","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdarth-dodo%2Fmeal-helper","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdarth-dodo%2Fmeal-helper/lists"}