{"id":18268528,"url":"https://github.com/viral32111/discordbot","last_synced_at":"2026-03-16T09:04:24.199Z","repository":{"id":40472323,"uuid":"256236644","full_name":"viral32111/discordbot","owner":"viral32111","description":"The official Discord bot for my community.","archived":false,"fork":false,"pushed_at":"2025-03-01T16:00:39.000Z","size":38583,"stargazers_count":3,"open_issues_count":8,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-03-20T20:17:36.202Z","etag":null,"topics":["automation","bot","discord"],"latest_commit_sha":null,"homepage":"https://discord.com/developers/docs/intro","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"agpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/viral32111.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-04-16T14:20:41.000Z","updated_at":"2025-01-01T15:15:07.000Z","dependencies_parsed_at":"2024-05-01T16:39:50.664Z","dependency_job_id":"583a3965-ec31-46b3-935d-e850b26a5fb5","html_url":"https://github.com/viral32111/discordbot","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/viral32111%2Fdiscordbot","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/viral32111%2Fdiscordbot/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/viral32111%2Fdiscordbot/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/viral32111%2Fdiscordbot/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/viral32111","download_url":"https://codeload.github.com/viral32111/discordbot/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247266475,"owners_count":20910831,"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":["automation","bot","discord"],"created_at":"2024-11-05T11:32:03.117Z","updated_at":"2026-03-16T09:04:24.172Z","avatar_url":"https://github.com/viral32111.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Discord Bot\n\nThis is the official bot for my community Discord server.\n\n**NOTE**: This repository is very barebones at present as I am in the process of slowly rewriting my *\"Discord Bot from Scratch\"* (a bot made in Node.js without any third-party libraries) from my personal Git server and publishing that here.\n\nThis contains my custom implementation of [RFC 6455: The WebSocket Protocol](https://www.rfc-editor.org/rfc/rfc6455.html) in the [`websocket`](source/websocket/) directory, as Node.js does not have a native client.\n\n## Running\n\nThe official bot used in my Discord server is **not** public, so you need to create your own [Discord Bot Application](https://discord.com/developers/docs/getting-started#creating-an-app).\n\nAlso do note that since this bot is tailored towards my community, running your own instance of it may prove troublesome.\n\n### Development\n\n1. Clone this repository (`git clone https://github.com/viral32111/discordbot.git`).\n2. Open the directory in [Visual Studio Code](https://code.visualstudio.com/).\n3. Populate the environment variables in [the .env file](.env) with appropriate values.\n4. Either **Run \u0026 Debug** using the provided [launch configuration](.vscode/launch.json), or open the **Integrated Terminal** and run [`npm start`](package.json#L8).\n\n### Production\n\nDocker images are built and published to this repository's [container registry](https://github.com/viral32111/discordbot/pkgs/container/discordbot) every time a commit is pushed.\n\nTo download and start a container in a single command, run the following:\n\n```\ndocker run \\\n\t--name discordbot \\\n\t--volume discordbot:/var/lib/bot \\\n\t--env-file ./my-environment-variables \\\n\t--interactive --tty \\\n\tghcr.io/viral32111/discordbot:latest\n```\n\nPersistent data is stored in `/var/lib/bot`, so this directory will need to be mounted in a volume, or as a bind mount.\n\nSee the [environment variables file](.env) for a list of environment variables that are required. These can be passed through either the `--env NAME=VALUE` or `--env-file FILE` flags.\n\n## History\n\nOver the years, this bot has gone through countless language changes, complete rewrites, and branding changes. I have done my best to collate a small list of them below, but do note that the dates are rough estimates.\n\nSadly, half of these are not in this repository's commit history as I either worked on them in private without Git, on my personal Git server, or in a separate repository which has since been deleted.\n\n### Conspiracy AI\n\nThis was the original bot back when the community was branded as *Conspiracy Servers*, its name was carried over from an automation bot we used on the [MyBB](https://mybb.com/) forums before we made the move to Discord.\n\n* **2016**: [RedBot](https://github.com/Cog-Creators/Red-DiscordBot) with custom configurations (a temporary bot until I started coding my own).\n* **2016/2017**: Started with C# on the .NET Framework using [Discord.NET](https://github.com/discord-net/Discord.Net).\n* **2017** (*`1.0.0`?*): Moved to Python using [discord.py](https://github.com/Rapptz/discord.py), as I did not like [Discord.NET](https://github.com/discord-net/Discord.Net)'s command-oriented approach to everything.\n* **2017-2019** (*`2.0.0`?*): Stayed on Python for a while, but went through about half a dozen major rewrites.\n* **2019/2020**: Tried out Node.js using [discord.js](https://discord.js.org), but I did not like it so this was quickly abandoned.\n* **2021** (`3.0.0`): Continued to use Python, also [published a release](https://github.com/viral32111/conspiracy-ai/releases/tag/3.0.0).\n\n### Suimin\n\nThis is the current bot for the community, which started when the community was rebranded to *viral32111's community*.\n\n* **June 2021**: Continued to use the latest version of Conspiracy AI's code in Python with [discord.py](https://github.com/Rapptz/discord.py), with a few minor changes.\n* **2021** (*`4.0.0`?*): [discord.py got deprecated](https://gist.github.com/Rapptz/4a2f62751b9600a31a0d3c78100287f1), so I tried out Node.js again, but this time without [discord.js](https://discord.js.org) or any third-party libraries, this went great but was never finished and thus never published.\n* **2021**: Tried making a low-level bot in C, but I ended up abandoning it when it came to coding a JSON parser.\n* **2022** (`5.0.0`): Went back to the no libraries bot using Node.js as it was the most successful, moved it over to TypeScript, and continued to use it.\n\n## License\n\nCopyright (C) 2016-2023 [viral32111](https://viral32111.com).\n\nThis program is free software: you can redistribute it and/or modify\nit under the terms of the GNU Affero General Public License as\npublished by the Free Software Foundation, either version 3 of the\nLicense, or (at your option) any later version.\n\nThis program is distributed in the hope that it will be useful,\nbut WITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\nGNU Affero General Public License for more details.\n\nYou should have received a copy of the GNU Affero General Public License\nalong with this program. If not, see https://www.gnu.org/licenses.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fviral32111%2Fdiscordbot","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fviral32111%2Fdiscordbot","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fviral32111%2Fdiscordbot/lists"}