{"id":26606068,"url":"https://github.com/zigzag1001/poggersbotv2","last_synced_at":"2026-04-09T23:34:55.032Z","repository":{"id":191788209,"uuid":"685348495","full_name":"zigzag1001/poggersbotv2","owner":"zigzag1001","description":"A simple, self hosted discord music bot with a web interface","archived":false,"fork":false,"pushed_at":"2025-01-13T06:48:53.000Z","size":228,"stargazers_count":0,"open_issues_count":0,"forks_count":1,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-01-13T07:19:43.294Z","etag":null,"topics":["bot","discord","discord-bot","discord-py","flask","mysql","poggers","sql","sqlite","web-interface","webui","youtube","youtube-dl","yt-dlp"],"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/zigzag1001.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":"2023-08-31T03:14:17.000Z","updated_at":"2025-01-13T06:44:02.000Z","dependencies_parsed_at":"2024-04-25T09:27:04.809Z","dependency_job_id":"383bb3e6-4186-4edb-9a8e-ef0a229ecb2a","html_url":"https://github.com/zigzag1001/poggersbotv2","commit_stats":null,"previous_names":["zigzag1001/poggersbotv2"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zigzag1001%2Fpoggersbotv2","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zigzag1001%2Fpoggersbotv2/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zigzag1001%2Fpoggersbotv2/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zigzag1001%2Fpoggersbotv2/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/zigzag1001","download_url":"https://codeload.github.com/zigzag1001/poggersbotv2/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245168864,"owners_count":20571804,"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":["bot","discord","discord-bot","discord-py","flask","mysql","poggers","sql","sqlite","web-interface","webui","youtube","youtube-dl","yt-dlp"],"created_at":"2025-03-23T21:18:22.647Z","updated_at":"2026-04-09T23:34:55.020Z","avatar_url":"https://github.com/zigzag1001.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003ch2 align=\"center\"\u003e PoggersBotV2 - Simple, self-hosted music bot with web interface \u003c/h2\u003e\n\n\u003cp align=\"center\"\u003e\n    \u003cimg src=\"https://i.ibb.co/Nyy13p0/poggers.png\" alt=\"poggers\"\u003e\n\u003c/p\u003e\n\n---\n\n\n## Features\n\n- Play music from YouTube, Soundcloud\n- Search query or URL\n- Supports playlists\n- Multi server support\n- Simple web interface\n- Edit queue (i.e. drag songs) from the web interface\n\n#### Preview Web\n![poggersbot_demo_v2](https://github.com/user-attachments/assets/c2544cb4-f880-49bb-a30e-c728f0c66723)\n\n#### Preview Web Features\nhttps://github.com/zigzag1001/poggersbotv2/assets/72932714/f2c2eafc-ca2a-4b77-ba74-9c934166fcdd\n#### Preview Basic Text Commands\nhttps://github.com/zigzag1001/poggersbotv2/assets/72932714/d5932a3c-98de-4eeb-8efe-ddf18b155c48\n\n\n\n## Installation\n\n1. Install docker\nhttps://docs.docker.com/get-docker/\n2. Clone this repository\n```bash\ngit clone https://github.com/zigzag1001/poggersbotv2 \u0026\u0026 cd poggersbotv2\n```\n3. Create file named `.env` inside this repo and copy these contents into it:\n```env\nDISCORD_TOKEN = \u003cyour discord bot token\u003e\nBASE_URL = http://example.com:7777/\nPORT = 7777\nPREFIX = r;\nPROXY = 0.0.0.0:0000 # Optional, helps with youtube blocking ip's\n```\n4. **The discord token is required**, url and port just make the web interface work. If you already have a Discord app skip to 7\n5. To create a Discord app and get the token: \n\n   a. Create app -\u003e https://discord.com/developers/applications?new_application=true\n\n   b. In the left menu click `Bot`, Token will be below the bot's username\n\n   c. If hidden, click reset token, it will show up\n6. To get invite link:\n\n    a. In the left menu click `OAuth2` -\u003e `URL generator`\n\n    b. For scopes select `bot`, for permissions select the following:\n\n    `Read Messages/View Channels`, `Send Messages`, `Embed Links`, `Read Message History`, `Add Reactions`, `Connect`, `Speak`\n7. Build and run the docker containers using compose (you might need to run as sudo)\n```bash\ndocker compose up\n```\n\n**After a few minutes you should see the bot indicate that it is running**\n\nNotes:\n- BASE_URL is the url where the bot is hosted, for example http://example.com, can also be an ip like http://192.168.1.1\n- If you are not using 80 or 443 for your port, you need to add the port to BASE_URL, for example http://example.com:7777\n- For other people to access the web interface, you need to port forward the port you set in .env\n- If using a reverse proxy, with subpath, http://example.com/subpath, /subpath will be taken as the base\n\n#### Reverse Proxy example\nCaddy\n```Caddyfile\nhandle_path /poggersbotv2* {\n    reverse_proxy poggersweb:\u003cPORT\u003e\n}\n```\nMake sure that docker poggersweb and your reverse proxy can communicate (i.e. same network)\n\n#### Usage\n\nBot uses prefix `r;`, for example `r;play \u003cquery\u003e`\n\nUse `r;help` to get a list of commands\n\nSome commands also have shorter aliases\n```\nr;play - r;p\nr;queue - r;q\nr;shuffle - r;sh\nr;skip - r;s\nr;loop - r;l\nr;web - r;w\n```\n\nFor `play` you can enter either search, url or playlist url\n\nFor `shuffle` you can optionally enter a playlist url, it will shuffle the playlist before adding to queue\n\nFor `queue` you can optionally enter a number, it will show that many songs from the queue, default is 10\n\n### More notes\n- In general, the project is a bit wonky, I used it to learn more SQL, HTML/JS/CSS and in general about how to connect a web interface to another thing\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzigzag1001%2Fpoggersbotv2","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fzigzag1001%2Fpoggersbotv2","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzigzag1001%2Fpoggersbotv2/lists"}