{"id":21120529,"url":"https://github.com/justinh-rahb/coffeebot","last_synced_at":"2026-05-17T21:03:17.563Z","repository":{"id":218170331,"uuid":"745771634","full_name":"justinh-rahb/CoffeeBot","owner":"justinh-rahb","description":"This bot has zero chill 🥶","archived":false,"fork":false,"pushed_at":"2024-01-26T01:50:23.000Z","size":380,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-01-21T05:11:19.523Z","etag":null,"topics":["coffee","meme-driven-development","opencv","python","python-opencv"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":false,"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/justinh-rahb.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,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-01-20T05:00:18.000Z","updated_at":"2024-02-26T18:52:09.000Z","dependencies_parsed_at":"2024-01-22T18:16:17.437Z","dependency_job_id":"612304dd-9dd9-4337-8767-e28bf4b5cec0","html_url":"https://github.com/justinh-rahb/CoffeeBot","commit_stats":null,"previous_names":["justinh-rahb/coffeebot"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/justinh-rahb%2FCoffeeBot","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/justinh-rahb%2FCoffeeBot/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/justinh-rahb%2FCoffeeBot/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/justinh-rahb%2FCoffeeBot/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/justinh-rahb","download_url":"https://codeload.github.com/justinh-rahb/CoffeeBot/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243565408,"owners_count":20311704,"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":["coffee","meme-driven-development","opencv","python","python-opencv"],"created_at":"2024-11-20T03:12:58.355Z","updated_at":"2026-05-17T21:03:12.532Z","avatar_url":"https://github.com/justinh-rahb.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ☕️ CoffeeBot 🤖\n\n\u003cimg width=\"500\" alt=\"Screenshot\" src=\"https://github.com/justinh-rahb/CoffeeBot/assets/52832301/db64049e-795c-4ed1-9700-a9a01152bbed\"\u003e\n\u003cbr\u003e\n\u003cimg width=\"500\" alt=\"Screenshot 2024-01-24 at 8 36 18 PM\" src=\"https://github.com/justinh-rahb/CoffeeBot/assets/52832301/32cf06c4-b590-4fb2-bb35-21503205cbe3\"\u003e\n\n\nThis is a bot 🤖, that watches the pot 🫖, and reminds you if you forgot 🤷‍♂️.\n\n### Table of Contents\n* [Requirements](#requirements)\n* [Installation](#installation)\n* [Configuration](#configuration)\n* [Never Lose Your Coffee Again!](#never-lose-your-coffee-again)\n* [License](#license)\n\n## Requirements\n\n* Python 3.6 or higher 🐍\n* Webcam 📷\n* Computer (even a potato 🥔 with 4GB RAM should do, as long as it runs Linux 🐧)\n* Coffee machine 🫖\n* Coffee cup ☕️\n* Propensity to forget your cup at the coffee machine 🤔\n\n## Installation\n\n1. Clone this repository with `git clone https://github.com/justinh-rahb/CoffeeBot.git`\n2. Move the cloned repository to `/opt` with `sudo mv CoffeeBot /opt`\n3. `cd` into the cloned repository with `cd /opt/CoffeeBot`\n4. Install the requirements with `sudo pip3 install -r requirements.txt`\n5. Set your environment variables by copying `.env.example` with `sudo cp .env.example .env` and editing `.env` with your favorite editor\n6. Copy the systemd service file to `/etc/systemd/system` with `sudo cp coffeebot.service /etc/systemd/system`\n7. Reload the systemd daemon with `sudo systemctl daemon-reload`\n8. Launch the bot with `sudo systemctl start coffeebot.service`\n\n## Configuration\n\nThe bot is configured via environment variables. You can set them in the `.env` file, or directly in your shell.\n\n| Variable | Description | Default |\n| -------- | ----------- | ------- |\n| BOT_WEBHOOK_URL | webhook URL for the bot to send messages to | none |\n| BOT_MESSAGE | message to send when the object is detected | Coffee cup left unattended! Please remove it from the coffee machine :) |\n| OBJECT | object to detect (see list: [coco.names](https://raw.githubusercontent.com/pjreddie/darknet/master/data/coco.names)) | cup |\n| MIN_CONFIDENCE | minimum confidence level for object detection | 0.5 |\n| FRAME_SKIP | number of frames to skip before checking for object | 5 |\n| DETECTION_TIME | time in seconds object must be detected before sending message | 300 |\n| CAPTURE_DEVICE | 0 for default webcam, 1 for USB webcam | 0 |\n| SAVE_DIR | directory to save images | /tmp |\n\n## Never Lose Your Coffee Again!\nYour coffee machine monitoring system should be up and running, so your co-workers won't have to remind you to get your cup anymore, and you can enjoy your coffee while it's still hot.\n\n## License\nThis project is open sourced under the MIT license. See the [LICENSE](LICENSE) file for more info.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjustinh-rahb%2Fcoffeebot","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjustinh-rahb%2Fcoffeebot","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjustinh-rahb%2Fcoffeebot/lists"}