{"id":19085892,"url":"https://github.com/gamazic/random-recipes-bot","last_synced_at":"2026-05-06T19:08:13.243Z","repository":{"id":44608074,"uuid":"379980946","full_name":"Gamazic/random-recipes-bot","owner":"Gamazic","description":"Telegram bot for indecisive people who can't choose what to cook.","archived":false,"fork":false,"pushed_at":"2022-04-10T09:04:42.000Z","size":385,"stargazers_count":1,"open_issues_count":1,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-01-02T21:48:44.131Z","etag":null,"topics":["aiogram","aws-ecs","bot","ci-cd","docker","github-actions","loguru","mongodb","mongodb-async-driver","motor","poetry","pymongo","pytest","telegram-bot"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Gamazic.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2021-06-24T16:03:14.000Z","updated_at":"2022-12-01T15:34:55.000Z","dependencies_parsed_at":"2022-09-17T14:31:17.459Z","dependency_job_id":null,"html_url":"https://github.com/Gamazic/random-recipes-bot","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/Gamazic%2Frandom-recipes-bot","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Gamazic%2Frandom-recipes-bot/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Gamazic%2Frandom-recipes-bot/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Gamazic%2Frandom-recipes-bot/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Gamazic","download_url":"https://codeload.github.com/Gamazic/random-recipes-bot/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":240137019,"owners_count":19753648,"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":["aiogram","aws-ecs","bot","ci-cd","docker","github-actions","loguru","mongodb","mongodb-async-driver","motor","poetry","pymongo","pytest","telegram-bot"],"created_at":"2024-11-09T02:57:48.253Z","updated_at":"2026-05-06T19:08:13.213Z","avatar_url":"https://github.com/Gamazic.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# RandomRecipesBot\n\n![Build](https://github.com/Gamazic/random-recipes-bot/actions/workflows/aws.yml/badge.svg?branch=master)\n\nInitially, the bot was created by me for personal purposes. When I didn't know what to cook, I took a random recipe from notes. Then I decided to make this bot for these purposes. But you can use it as a bag in which you can put any items and endlessly pull out recipes without repeating.\n\n## Bot link\n\nhttps://t.me/RandomRecipesBot\n\n## Preview\n\n![Preview](tg_app_screenshots/random-recipes-bot-alpha-v0.1.jpg)\n\n# About project\n\n## How to manual start localy\n\n### Requirements\n\n* `Python 3.9`\n* `poetry`\n* `.env` file with following variables:\n    ```\n    MONGO_ROOT_PASSWORD\n    MONGO_ROOT_USERNAME\n    MONGO_USER\n    MONGO_PASSWORD\n    MONGO_HOST\n    MONGO_PORT\n    MONGO_RECIPE_DB\n    TG_TOKEN\n    WEBHOOK_HOST\n    WEBHOOK_PATH\n    WEBHOOK_PORT\n    WEBAPP_HOST\n    WEBAPP_PORT\n    ```\n\n### Install dependencies\n\nTo install all dependencies use command:\n```bash\npoetry install -n\n```\nYou can learn more about `poetry` here:\n* Russian [^1]\n* English [^2]\n\nTo install without dev dependenices (for run project only without tests and linters) use following command:\n```bash\npoetry install -n --no-dev\n```\n\n### Run app with polling\n\n```python\npoetry run python server.py -e polling\n```\n\n### Run tests\n```python\npoetry run pytest -v\n```\nTesting can be run only with dev dependecies\n\n## Start localy via docker-compose\nAt first you need to install `docker-compose`.\nHow to do this you can read here:\n* Russian [^3], [^4].\n* English [^5], [^6].\n\nAfter installing `docker-compose` you need to run the following command:\n```bash\ndocker-compose up -d\n```\n\n# Useful links\n\n* Гайд по `github actions`: https://youtu.be/Yg5rpke79X4\n* Гайд как запустить контейнер на `AWS EC2` через `cli` на сервере: https://github.com/gavrilka/TelegramBot\n* Deploy `docker-compose` on `AWS ECS EC2`: https://dev.to/raphaelmansuy/10-minutes-to-deploy-a-docker-compose-stack-on-aws-illustrated-with-hasura-and-postgres-3f6e\n\n`More guides in README comming soon.`\n\n[^1]: Обзор `poetry` от Диджитализируй!: https://youtu.be/KOC0Gbo_0HY\n[^2]: `poetry` official documentation: https://python-poetry.org/docs/\n[^3]: Установка `Docker` для `Ubuntu 18.04`: https://www.digitalocean.com/community/tutorials/docker-ubuntu-18-04-1-ru\n[^4]: Установка `docker-compose` для `Ubuntu 18.04`: https://www.digitalocean.com/community/tutorials/how-to-install-docker-compose-on-ubuntu-18-04-ru\n[^5]: Install `Docker`: https://docs.docker.com/engine/install/\n[^6]: Install `docker-compose`: https://docs.docker.com/compose/install/\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgamazic%2Frandom-recipes-bot","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgamazic%2Frandom-recipes-bot","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgamazic%2Frandom-recipes-bot/lists"}