{"id":15132841,"url":"https://github.com/un1xg0d/opentreat","last_synced_at":"2026-01-29T10:56:08.805Z","repository":{"id":252443769,"uuid":"840460327","full_name":"Un1xG0d/OpenTreat","owner":"Un1xG0d","description":"Video chat with your pet and remotely dispense treats with the push of a button.","archived":false,"fork":false,"pushed_at":"2025-02-12T13:44:36.000Z","size":3494,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-04-05T21:45:03.409Z","etag":null,"topics":["3d-printing","flask","pets","python","raspberry-pi","video-stream"],"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/Un1xG0d.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,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-08-09T18:57:02.000Z","updated_at":"2025-02-12T13:44:39.000Z","dependencies_parsed_at":"2024-08-11T21:25:46.340Z","dependency_job_id":"6def3762-34e6-4884-b02d-4a485aa6ffc2","html_url":"https://github.com/Un1xG0d/OpenTreat","commit_stats":{"total_commits":68,"total_committers":1,"mean_commits":68.0,"dds":0.0,"last_synced_commit":"b102e3b071893c68b5349d0d28d5567d8f4bfd13"},"previous_names":["un1xg0d/opentreat2"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Un1xG0d%2FOpenTreat","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Un1xG0d%2FOpenTreat/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Un1xG0d%2FOpenTreat/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Un1xG0d%2FOpenTreat/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Un1xG0d","download_url":"https://codeload.github.com/Un1xG0d/OpenTreat/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247406070,"owners_count":20933802,"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":["3d-printing","flask","pets","python","raspberry-pi","video-stream"],"created_at":"2024-09-26T04:40:42.064Z","updated_at":"2026-01-29T10:56:08.732Z","avatar_url":"https://github.com/Un1xG0d.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003ch1 align=\"center\"\u003e\n  \u003cimg src=\"https://github.com/Un1xG0d/OpenTreat/blob/master/README/Icon-full.png\"\u003e\n\u003c/h1\u003e\n\nOpenTreat allows you to view and interact with your pets while not at home. \n\nWatch a live video stream of your pet from your smartphone or laptop, and remotely dispense treats with the push of a button.\n\nThis a complete rewrite of my original OpenTreat project found [here](https://github.com/Un1xG0d/OpenTreat-legacy).\n\n## Overview\nThe treat dispenser system is built using a Raspberry Pi and 3D printed parts. When a user presses the button on the web app, it turns the servo motor for a certain number of seconds. This spins the middle piece and dispenses a section of treats into the bowl below.\n\n## Parts needed\n* Raspberry Pi\n* SG90 servo (or any 360* servo motor)\n* USB webcam\n* 3D printer\n\n## Physical assembly\n1. Download and 3D print each STL listed in the `models` folder\n\t1. The recommended print settings are in the Resources section below\n2. Assemble the parts using super glue\n3. Hook up the 3 servo wires to the Raspberry Pi’s GPIO pins\n\t1. The proper pinout is in the Resources section below\n\n## Device setup\n1. Image your Raspberry Pi with [Raspbian](https://www.raspberrypi.com/software/)\n2. Create a new user with the username `admin`\n3. Configure your WiFi network settings\n4. Enable OpenSSH\n\n## Download the code\n```\ngit clone https://github.com/Un1xG0d/OpenTreat.git ~/OpenTreat\ncd ~/OpenTreat\n```\n\n## Install dependencies\n```\nsudo pip3 install -r requirements.txt\n```\n\n## Set up username and password\nThe web app uses HTTP Basic Auth to secure the video feed.\n\nCreate a `.env` file in the root directory and update the values accordingly:\n```\nUSERNAME=test\nPASSWORD=test\n```\n\nThis will be your username \u0026 password to login to the web app.\n\n## Automatic startup\nCreate a cronjob with `sudo crontab -e` to automatically set up and start the web app on boot.\n\n```\n@reboot /home/admin/OpenTreat/boot.sh\n```\n\n## Port forward the app\nMake sure to change your router settings to allow a port forward of port 80 to your Raspberry Pi. This is what makes the web app accessible to the internet.\n\n## View the video stream\nOn your smartphone or laptop, browse to your router's external IP on port 80 to view the video stream of your pets. Press the button to drop treats into your pets' bowl.\n\n## Resources\n### Recommended print settings\n\u003e Scale: 100%  \n\u003e Infill: 10%  \n\u003e Layer Height: 0.2  \n\u003e Speed: Standard  \n\u003e Supports: None\n\n### RPi GPIO pinout\n\u003e Red wire - Pin 1 - 3v3 power  \n\u003e Black wire - Pin 6 - ground  \n\u003e Orange wire - Pin 11 - GPIO 17  \n\n## Pictures \u0026 screenshots\n![](README/Mockup-1.png)\n![](README/Assembly-1.png)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fun1xg0d%2Fopentreat","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fun1xg0d%2Fopentreat","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fun1xg0d%2Fopentreat/lists"}