{"id":22549129,"url":"https://github.com/steeven9/scheduletweetbot","last_synced_at":"2026-05-05T05:38:21.756Z","repository":{"id":55277195,"uuid":"517357210","full_name":"Steeven9/ScheduleTweetBot","owner":"Steeven9","description":"A simple Discord bot to fetch schedule-related tweets","archived":false,"fork":false,"pushed_at":"2024-02-08T21:26:24.000Z","size":657,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-02T10:13:53.683Z","etag":null,"topics":["bot","discord","discord-bot","dokibird","hololive","python","schedule","twitter","twitter-api","twitter-bot"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Steeven9.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","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},"funding":{"ko_fi":"steeven958824"}},"created_at":"2022-07-24T15:10:07.000Z","updated_at":"2024-02-08T20:52:12.000Z","dependencies_parsed_at":"2023-02-06T09:17:11.806Z","dependency_job_id":"88b4c5c0-506a-423b-a570-c9e523530419","html_url":"https://github.com/Steeven9/ScheduleTweetBot","commit_stats":null,"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Steeven9%2FScheduleTweetBot","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Steeven9%2FScheduleTweetBot/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Steeven9%2FScheduleTweetBot/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Steeven9%2FScheduleTweetBot/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Steeven9","download_url":"https://codeload.github.com/Steeven9/ScheduleTweetBot/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246000768,"owners_count":20707788,"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","dokibird","hololive","python","schedule","twitter","twitter-api","twitter-bot"],"created_at":"2024-12-07T16:07:57.217Z","updated_at":"2026-05-05T05:38:21.714Z","avatar_url":"https://github.com/Steeven9.png","language":"Python","funding_links":["https://ko-fi.com/steeven958824"],"categories":[],"sub_categories":[],"readme":"# \u003cimg src=\"logo.png\" width=\"100\"\u003e ScheduleTweetBot\n\n[![License](https://img.shields.io/github/license/Steeven9/ScheduleTweetBot)](/LICENSE)\n[![C/C++ CI](https://github.com/Steeven9/ScheduleTweetBot/actions/workflows/docker-image.yml/badge.svg)](https://github.com/Steeven9/ScheduleTweetBot/actions/workflows/docker-image.yml)\n![Lines](https://img.shields.io/tokei/lines/github/Steeven9/ScheduleTweetBot)\n\nA simple Discord bot to fetch schedule-related tweets and spaces to\nfeed our [Hololive](https://holocal.moe) and [Nijisanji](https://nijien.vercel.app) calendars.\n\n## Setup\n\n1. Obtain a [Discord bot token](https://www.writebots.com/discord-bot-token).\n\n2. Clone the repo and install the requirements:\n\n    ```bash\n    pip install --no-cache-dir -r requirements.txt\n    ```\n\n3. Set the BOT_TOKEN and API_URL environment variables with the token from step 1\nand the [blooop](https://github.com/Steeven9/blooop) URL respectively.\n\n4. Customize the configuration for scraping and notifying: edit the `data.py` file and fill in all the values.\n\n5. Finally, run `python main.py`. If everything went well, you should see an output similar to this:\n\n    ```bash\n    2023-02-18 00:26:56 [NAME] Loaded \u003cn\u003e extra pings\n    2023-02-18 00:26:56 [NAME] Logged in as \u003cyour bot name and ID\u003e\n    ```\n\n## Usage\n\nThe bot automatically sends new tweets in the specified channel every 60 seconds\n(the timeout is configurable in `main.py`), pinging the specified role if any keyword matches.\nThe watched talents and keywords can be set in the `data.py` file.\n\nOptionally you can also use `/fetch` to fetch and display new tweets and spaces manually.\nIf you don't see the slash command in your server, wait around one hour to allow it\nto sync, or check that you invited the bot with the `applications.commands` scope.\n\nThe already scraped tweets and spaces are saved each time so you won't see the same one twice;\nby default the IDs are written in the `config/[NAME]_tweets.ini` and `config/[NAME]_spaces.ini`\nfiles (configurable in `main.py` as well).\n\n## Run in Docker\n\nCreate a `.env` file with the environment variables mentioned in step 3,\nthen build or pull the image from [Dockerhub](https://hub.docker.com/repository/docker/steeven9/scheduletweetbot) and run it:\n\n```bash\n    docker build . -t scheduletweetbot\n    docker run --name scheduletweetbot --env-file .env scheduletweetbot\n```\n\n## Credits\n\nLogo by the one and only [DuDuL](https://twitter.com/DuDuLtv)!\n\nTwitter data is provided by [blooop](https://github.com/Steeven9/blooop).\n\nHuge thanks to the teams of `KFP | The Office` and `Nijisanji EN Schedule Team`\nfor helping with debugging and feature suggestions.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsteeven9%2Fscheduletweetbot","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsteeven9%2Fscheduletweetbot","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsteeven9%2Fscheduletweetbot/lists"}