{"id":43071728,"url":"https://github.com/s0me-1/devtracker-bot","last_synced_at":"2026-01-31T13:54:34.357Z","repository":{"id":38017013,"uuid":"501521923","full_name":"s0me-1/devtracker-bot","owner":"s0me-1","description":"Discord Bot for DeveloperTracker","archived":false,"fork":false,"pushed_at":"2025-10-17T08:01:45.000Z","size":248,"stargazers_count":8,"open_issues_count":1,"forks_count":1,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-10-18T10:40:35.758Z","etag":null,"topics":["discord","discord-bot","discord-server","disnake","disnake-bot","docker","game-development","python","python3"],"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/s0me-1.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,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2022-06-09T05:52:30.000Z","updated_at":"2025-10-17T08:01:48.000Z","dependencies_parsed_at":"2024-03-02T01:45:00.178Z","dependency_job_id":"59bcb449-eb7e-4657-adec-9ad77c4f3311","html_url":"https://github.com/s0me-1/devtracker-bot","commit_stats":null,"previous_names":[],"tags_count":13,"template":false,"template_full_name":null,"purl":"pkg:github/s0me-1/devtracker-bot","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/s0me-1%2Fdevtracker-bot","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/s0me-1%2Fdevtracker-bot/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/s0me-1%2Fdevtracker-bot/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/s0me-1%2Fdevtracker-bot/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/s0me-1","download_url":"https://codeload.github.com/s0me-1/devtracker-bot/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/s0me-1%2Fdevtracker-bot/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28944789,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-31T13:02:32.153Z","status":"ssl_error","status_checked_at":"2026-01-31T13:00:07.528Z","response_time":128,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":["discord","discord-bot","discord-server","disnake","disnake-bot","docker","game-development","python","python3"],"created_at":"2026-01-31T13:54:33.735Z","updated_at":"2026-01-31T13:54:34.352Z","avatar_url":"https://github.com/s0me-1.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n  \u003cimg src=\"https://i33.servimg.com/u/f33/11/20/17/41/logo_b11.png\" alt=\"DevTracker Bot Logo\"/\u003e\n\u003c/p\u003e\n\n# DevTracker\n\u003ca href=\"https://discord.gg/QN9uveFYXX\"\u003e\u003cimg src=\"https://img.shields.io/discord/984016998084247582?style=flat-square\u0026color=5865f2\u0026logo=discord\u0026logoColor=ffffff\u0026label=discord\" alt=\"Discord server invite\" /\u003e\u003c/a\u003e\n\u003ca href=\"https://pypi.python.org/pypi/disnake\"\u003e\u003cimg src=\"https://img.shields.io/pypi/pyversions/disnake.svg?style=flat-square\" alt=\"PyPI supported Python versions\" /\u003e\u003c/a\u003e\n\nDiscord Bot interfacing with the API of [DeveloperTracker.com](https://developertracker.com/).\n\nBuilt with [Disnake](https://disnake.dev/).\n\n- [Features](#features)\n- [Supported Games](#supported-games)\n- [Getting Started](#getting-started)\n  * [Installation](#installation)\n  * [Basic setup](#basic-setup)\n  * [Advanced setup](#advanced-setup)\n- [Commands](#commands)\n  * [Filtering posts](#filtering-posts)\n  * [Get current configuration](#get-current-configuration)\n- [Self-Hosting](#self-hosting)\n  * [Python](#python)\n  * [Docker-Compose](#docker-compose)\n- [Credits](#credits)\n- [License](#license)\n\n## Features\n\nThis Bot track any post made by GameDevs from **30+** games, and let you follow the one you want via [Discord Slash Commands](https://support.discord.com/hc/en-us/articles/1500000368501-Slash-Commands-FAQ).\n\n- Posts are compatible with the Discord Markdown Implementation.\n- Follow any supported game at the same time.\n- Set a specific channel per followed game if desired.\n- Ignore posts from specific GameDevs\n\n![DevTracker Post Example Steam](https://i.imgur.com/0VGp7pl.png)\n\n## Supported Games\n\nThis is a non-exhaustive list of the games supported by the bot. You can find the full list [here](https://developertracker.com/).\n\n- ARK: Survival Evolved\n- Anthem\n- Battlefield 1\n- Conan: Exiles\n- Core Keeper\n- Counter Strike: Global Offensive\n- Darwin Project\n- DayZ\n- Dead Matter\n- Destiny 2\n- Dwarf Fortress\n- Dyson Sphere Program\n- Elite: Dangerous\n- Escape from Tarkov\n- Fortnite\n- Going Medieval\n- Hearthstone\n- Icarus\n- It Lurks Below\n- Magic: The Gathering Arena\n- Marauders\n- Oxygen Not Included\n- PLAYERUNKNOWN'S BATTLEGROUNDS\n- Path of Exile\n- Rainbow 6: Siege\n- Realm Royale\n- RimWorld\n- Rocket League\n- Satisfactory\n- Sea of Thieves\n- Space Haven\n- Star Citizen\n- Starbase\n- Stonehearth\n- The Cycle: Frontier\n- The Planet Crafter\n- They Are Billions\n- V Rising\n- Valheim\n\n## Getting Started\n### Installation\n\nClick the button below to add **DevTracker** to your server.\n\n[![](https://i33.servimg.com/u/f33/11/20/17/41/invite10.png)](https://discord.com/api/oauth2/authorize?client_id=982257201211138050\u0026permissions=274877925376\u0026scope=bot%20applications.commands)\n\n### Basic setup\nSimply create a channel where you want to receive the posts, make sure **DevTracker** has the `View Channel` and `Send Messages` Discord permissions for that channel.\n\nThen, use the `/dt-set-channel` command to tell the bot where to send the posts. e.g.:\n```\n /dt-set-channel game channel: #sc-devtracker game: Star Citizen\n```\n\n### Advanced setup\n\nYou have 2 options, use a single channel for all the posts, or use a specific channel for each game:\n- **Single channel**: Use the `/dt-set-channel default` command to set the default channel for all the posts. e.g.:\n```\n /dt-set-channel default channel: #devtracker\n```\nYou can then use the `/dt-follow` command to follow games. e.g.:\n```\n/dt-follow game: Star Citizen\n/dt-follow game: Elite: Dangerous\n```\nNow all the posts from `Star Citizen` and `Elite: Dangerous` will be sent to the `#devtracker` channel.\n\n- **Specific channel per game**: Use the `/dt-set-channel game` command to set a specific channel for each game. e.g.:\n```\n /dt-set-channel game channel: #sc-devtracker game: Star Citizen\n```\n\n\n## Commands\n\nEach Slash Command has **autofillers** to help you.\n\n![Slash Command autofiller example](https://i.imgur.com/nui0Yk3.png)\n\n\n### Filtering posts\n\n#### Allowlist \u0026 Ignorelist\nYou can setup allowlists or ignorelists to filter posts for **each game**.\n- `allowlist`: Only posts matching the accounts or service in this list will be sent.\n- `ignorelist`: Posts matching the accounts or service in this list will be ignored.\n\n**Notes**:\n- Each `allowlist` or `ignorelist` is game-specific, so you can have different filters for each game.\n- You can use both at the same time, but the `allowlist` will take precedence over the `ignorelist`. E.g. if you have an `igorelist` with a specific account for `Star Citizen` from the `Twitter` service, and an `allowlist` for the whole `rsi` service for `Star Citizen`, only posts from the `rsi` service will be sent, the ignored account will not even be considered.\n- You'll find the `account_id` in the footer of each post.\n\n**Ignore specific accounts or service:**\n\nThis is achieved via the `/dt-ignorelist` command. Any future post from the specified account or service from the `ignorelist` for the specified game will be ignored.\n\n**Examples:**\n\n```sh\n# Ignore posts from a specific account\n/dt-ignorelist add account game_name: Star Citizen service_id: rsi account_id: Zyloh-CIG\n\n# Ignore all posts from a specific service\n/dt-ignorelist add service game_name: Star Citizen service_id: rsi\n\n# Stop ignoring posts from a specific service\n/dt-ignorelist remove service game_name: Star Citizen service_id: rsi\n\n# Stop ignoring posts from a specific account\n/dt-ignorelist remove account game_name: Star Citizen account_id: Zyloh-CIG\n```\n\n**Get only posts from specific accounts or service:**\n\nThis is achieved via the `/dt-allowlist` command. Any future post from the specified account or service from the `allowlist` will be the only ones sent for the specified game.\n\nUsage is the same than the `ignorelist` command.\n\n**Examples:**\n\n```sh\n# Get posts from a specific account only\n/dt-allowlist add account game_name: Star Citizen service_id: rsi account_id: Zyloh-CIG\n\n# Get posts from a specific service only\n/dt-allowlist add service game_name: Star Citizen service_id: rsi\n\n# Remove a specific service from the allowlist\n/dt-allowlist remove service game_name: Star Citizen service_id: rsi\n\n# Remove a specific account from the allowlist\n/dt-allowlist remove account game_name: Star Citizen account_id: Zyloh-CIG\n```\n\n#### URL Filters\n\nYou can also filter posts by URL. This is useful if you want to get only posts from specific threads.\nThere's two different con\n\n##### Global URL Filters\nOnly posts where the origin URL matches the filters will be sent to the channel configured with the `/dt-set-channel` command.\n\n**Example**\n\nLet's imagine you want only posts from the `Announcements` section of the Star Citizen forums. The url for the `Announcements` section is `https://robertsspaceindustries.com/spectrum/community/SC/forum/1`\n\nYou can use the `/dt-urlfilters global` command to add `forum/1` filter for `Star Citizen` forums:\n```sh\n/dt-urlfilters global game_name: Star Citizen service_id: rsi\n```\n\nThis will open a modal with your current filters.\n\n![URL Filters modal](https://i.imgur.com/roj67fp.png)\n\nYou can then add the `forum/1` filter then click the **Submit** button to apply changes.\n\n**Note:**\nYou can also add multiple filters for the same service. You just need to separate them with a comma `,`.\nIf any of the filters match the post URL, it will be sent to the set channel.\n\nE.g.: `forum/1,forum/3,forum/4`, this will match any post from the `Announcements`, `General` and `Feedback` sections.\n\n##### Channel URL Filters\nThis allows to use URL Filters to dispatch posts that match the filters to a specific channel.\n\n**Example**\n\nLet's imagine you want all the posts from the `Announcements` section of the Star Citizen forums to be sent to the `#sc-announcements` Discord channel. The url for the `Announcements` section is `https://robertsspaceindustries.com/spectrum/community/SC/forum/1`\n\nYou can use the `/dt-urlfilters channel` command to add `forum/1` filter for `Star Citizen` forums:\n```\n/dt-urlfilters global channel: #sc-announcements game_name: Star Citizen service_id: rsi\n```\n\nThis will open a modal with your current filters.\nYou can then add the `forum/1` filter then click the **Submit** button to apply changes.\n\n**Note**:\n- Please make sure the bot have the __**Send Message permission**__ for the channel you're using. Otherwise it won't be able to send the posts.\n- You can add multiple filters for the same service here too. You just need to separate them with a comma `,`.\n\n### Get current configuration\n\nYou can use the `/dt-config` command to get the current configuration for the server.\n\nThis will list all the games you're following, and the channel where the posts are sent.\nIt will also give you the active `allowlist` and `ignorelist` for each game.\n\n![DevTracker Config](https://i.imgur.com/Za6pQ7F.png)\n\n## Self-Hosting\n\nThis Bot relies on the **DeveloperTracker API** that can be found [here](https://github.com/post-tracker/rest-api).\n\nOnce you have your credentials, you can either:\n- Fill the `example.env` file and rename it into `.env`.\n- Use `docker-compose.yml` with [Docker Secrets](https://docs.docker.com/engine/swarm/secrets/).\n\nHere's what you'll need to set:\n- `API_BASE`: The DeveloperTracker.com API base url.\n- `API_TOKEN`: Your DeveloperTracker.com API Token.\n- `BOT_TOKEN`:  Your [Discord Bot Token](https://discord.com/developers/applications)\n\nOptional (Only used when the `--log-level debug` argument is passed or with `docker-compose --profile debug`.):\n- `DEBUG_GUILD_ID`: Your Debug Guild ID, slash commands will only be synchronized for this guild only.\n- `DEBUG_BOT_TOKEN`:  Your Debug [Discord Bot Token](https://discord.com/developers/applications), to run the bot on a seperate Discord App when debugging.\n\nYou can then launch the bot as described below:\n\n### Python\n\nInstall the pip dependancies (virtual environment recommended).\n```console\n$ pip -r requirements.txt\n```\nAnd you can simply run the bot with\n```console\n$ python bot.py\n```\n\n### Docker-Compose\nDocker will manage the dependancies for you.\nIt will build the images automatically on first run.\n\n```console\n$ docker-compose --profile default up -d\n```\n\nRun in debug mode:\n```console\n$ docker-compose --profile debug up -d\n```\n\n## Credits\n- [@kokarn](https://github.com/kokarn) - Main Dev of [DeveloperTracker.com](https://developertracker.com/).\n- [Disnake](https://github.com/DisnakeDev/disnake) - Discord API Wrapper for Python.\n\n## Official Website\n\n[devtracker-bot.github.io/](https://devtracker-bot.github.io/)\n\n## License\n[GPL v3](https://github.com/s0me-1/devtracker-bot/blob/master/LICENSE)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fs0me-1%2Fdevtracker-bot","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fs0me-1%2Fdevtracker-bot","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fs0me-1%2Fdevtracker-bot/lists"}