{"id":20489309,"url":"https://github.com/vyahello/calorie-counter","last_synced_at":"2025-04-13T16:32:38.374Z","repository":{"id":44724402,"uuid":"233235370","full_name":"vyahello/calorie-counter","owner":"vyahello","description":"🍔 Web app to calculate calories based on given food (flask, js, docker, heroku)","archived":false,"fork":false,"pushed_at":"2022-12-27T15:37:28.000Z","size":10948,"stargazers_count":6,"open_issues_count":6,"forks_count":1,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-03-27T07:21:24.914Z","etag":null,"topics":["calorie-calculator","calorie-counter","calories-tracker","flask","javascript","single-page-app","web-application"],"latest_commit_sha":null,"homepage":"https://food-calories-counter.herokuapp.com","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/vyahello.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2020-01-11T13:23:13.000Z","updated_at":"2024-05-31T16:11:38.000Z","dependencies_parsed_at":"2023-01-31T04:45:11.462Z","dependency_job_id":null,"html_url":"https://github.com/vyahello/calorie-counter","commit_stats":null,"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vyahello%2Fcalorie-counter","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vyahello%2Fcalorie-counter/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vyahello%2Fcalorie-counter/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vyahello%2Fcalorie-counter/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/vyahello","download_url":"https://codeload.github.com/vyahello/calorie-counter/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248743821,"owners_count":21154747,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":["calorie-calculator","calorie-counter","calories-tracker","flask","javascript","single-page-app","web-application"],"created_at":"2024-11-15T17:12:18.676Z","updated_at":"2025-04-13T16:32:38.352Z","avatar_url":"https://github.com/vyahello.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"![Screenshot](media/logo.png)\n\n[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)\n[![Checked with mypy](http://www.mypy-lang.org/static/mypy_badge.svg)](http://mypy-lang.org/)\n[![Build Status](https://api.travis-ci.com/vyahello/calorie-counter.svg?branch=master)](https://www.travis-ci.com/github/vyahello/calorie-counter)\n[![Coverage Status](https://coveralls.io/repos/github/vyahello/calorie-counter/badge.svg?branch=master)](https://coveralls.io/github/vyahello/calorie-counter?branch=master)\n[![License](https://img.shields.io/badge/license-MIT-green.svg)](LICENSE.md)\n[![PyPI version shields.io](https://img.shields.io/pypi/v/calorie-counter.svg)](https://pypi.python.org/pypi/calorie-counter/)\n[![PyPI pyversions](https://img.shields.io/pypi/pyversions/calorie-counter.svg)](https://pypi.python.org/pypi/calorie-counter/)\n[![PyPi downloads](https://img.shields.io/pypi/dm/calorie-counter.svg)](https://pypi.python.org/pypi/calorie-counter)\n[![CodeFactor](https://www.codefactor.io/repository/github/vyahello/calorie-counter/badge)](https://www.codefactor.io/repository/github/vyahello/calorie-counter)\n[![Docker pulls](https://img.shields.io/docker/pulls/vyahello/calorie-counter.svg)](https://hub.docker.com/repository/docker/vyahello/calorie-counter)\n\n# Calorie counter\n\u003e This project represents a simple web app to calculate calories based on given food type. \n\n## Tools\n\n### Production\n- front-end\n  - html5\n  - css3\n  - javascript (vanilla)\n- back-end\n  - python 3.6, 3.7, 3.8\n  - [flask](http://flask.palletsprojects.com)\n\n### Development\n- [pytest](https://pypi.org/project/pytest/)\n- [mypy](http://mypy.readthedocs.io/en/latest)\n- [black](https://black.readthedocs.io/en/stable/)\n- [travis](https://travis-ci.org) CI\n\n## Usage\n\nPlease check out app via:\n  - https://food-calories-counter.herokuapp.com (prod stage)\n  - http://178.62.222.165:5002 (test stage)\n\n![Usage](media/howto.gif)\n\n### Quick start\n\nPlease use the following command to run app via docker:\n```bash\ndocker run -it -p 5001:5001 vyahello/calorie-counter:0.1.0 counter\n```\n\nThen please browse for http://0.0.0.0:5001 endpoint.\n\n### Source code\n\nTo be able to run source code please execute command below:\n```bash\ngit clone git@github.com:vyahello/calorie-counter.git\ncd calorie-counter\npython3 -m venv venv\n. venv/bin/activate\npip install -r requirements.txt\npython -m counter --bind 0.0.0.0:5001 --debug\n```\n\nAlso you can use **flask** built-in runner based on [.flaskenv](.flaskenv) config file: \n```bash\nexport FLASK_APP=counter\nflask run\n```\n\nThen please open [localhost:5003](http://localhost:5003) endpoint in your browser.\n\n### PYPI Installation\n\nPlease run following script to obtain latest package from PYPI:\n```bash\npip install calorie-counter\n```\nThen please execute instructions below to launch game from your environment:\n```python\n\u003e\u003e\u003e from counter import Bind, easyrun\n\u003e\u003e\u003e \n\u003e\u003e\u003e easyrun(Bind(\"0.0.0.0:5003\"))\n```\nThen please open [localhost:5003](http://localhost:5003) endpoint in your browser.\n\n## Development notes\n\n### CI\n\nProject has Travis CI integration using [.travis.yml](.travis.yml) file thus code analysis (`black`, `mypy`) and unittests (`pytest`) will be run automatically\nafter every made change to the repository.\n\nTo be able to run code analysis, please execute command below:\n```bash\n./analyse-code.sh\n```\n\n### Build docker images\n\nTo build base image please run the following command:\n```bash\ndocker build --no-cache -t vyahello/calorie-counter:0.1.0 -f docker/Dockerfile .\n```\n\nTo build main image please run the following command:\n\n```bash\ndocker build --no-cache -t vyahello/calorie-counter:test -f docker/Dockerfile --build-arg VERSION=0.1.0 .\n```\n\nPlease use the following commands to push image:\n```bash\ndocker push vyahello/calorie-counter:test\n```\n\n### Release notes\n\nPlease check [changelog](CHANGELOG.md) file to get more details about actual versions and it's release notes.\n\n### Meta\n\nAuthor – _Volodymyr Yahello_\n\nDistributed under the `MIT` license. See [license](LICENSE.md) for more information.\n\nYou can reach out me at:\n* [vyahello@gmail.com](vyahello@gmail.com)\n* [https://twitter.com/vyahello](https://twitter.com/vyahello)\n* [https://www.linkedin.com/in/volodymyr-yahello-821746127](https://www.linkedin.com/in/volodymyr-yahello-821746127)\n\n### Contributing\nI would highly appreciate any contribution and support. If you are interested to add your ideas into project please follow next simple steps:\n\n1. Clone the repository\n2. Configure `git` for the first time after cloning with your `name` and `email`\n3. `pip install -r requirements.txt` to install all project dependencies\n4. `pip install -r requirements-dev.txt` to install all development project dependencies\n5. Create your feature branch (`git checkout -b feature/fooBar`)\n6. Commit your changes (`git commit -am 'Add some fooBar'`)\n7. Push to the branch (`git push origin feature/fooBar`)\n8. Create a new Pull Request\n\n### What's next\n\nAll recent activities and ideas are described at project [issues](https://github.com/vyahello/calorie-counter/issues).\nIf you have ideas you want to change/implement please do not hesitate and create an issue.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvyahello%2Fcalorie-counter","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fvyahello%2Fcalorie-counter","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvyahello%2Fcalorie-counter/lists"}