Welcome to the GitHub repository for Dad Bot. Based on the original Dad Bot made by @Reaxt that was shut down. Dad Bot has become a much larger project than I would've ever expected, and I thank everyone who uses the bot, the people who have contributed to it, people who give suggestions to improve the bot, and etc. This bot wouldn't be anywhere near where it is without the support of everyone who uses the bot.
Contributing is super simple, you can fork the repo, make your contribution, and make a PR. AlekEagle will review the PR, and do the normal PR review thingys.
Dad Bot is an absolute mess of code, and I'm sorry. I'm working on cleaning it up, but it's a slow process. If you want to run your own instance of Dad Bot, you can do so by following these steps:
-
Clone the necessary repos
- Dad Bot (this repo)
- Dad Bot Cluster Manager
- Dad Bot Cluster Client
-
Organize the repos like so:
| +-- dadbot | +-- dadbot-cluster-manager | +-- dadbot-cluster-client
-
Install the dependencies for each repo (
npm i
in each repo or whatever the hell package manager you use) -
Transpile the TypeScript for each repo (
npm run build
in each repo) -
Prepare a PostgreSQL database for Dad Bot (Dad Bot deserves his own database, he'll create his own tables as needed)
-
Prepare Dad Bot's
.env
file (There is anexample.env
file in the repo, use that as a template) -
Make sure the cluster manager is configured correctly (Those instructions are in the cluster manager repo)
-
(Optional, but recommended for production environments) Replace the placeholder fields in the
[email protected]
file with the correct paths and user information, copy it to/etc/systemd/system/
, runsystemctl daemon-reload
, and enable it withsystemctl enable dadbot-cluster@<ClusterID>.service
(Replace<ClusterID>
with the ID of the cluster you want to enable and repeat for each cluster you want to enable) -
Run the damn thing.
- Systemd service:
systemctl start [email protected] ...
- Manually: (Make sure you manually set
CLUSTER_ID
in the.env
file or in the environment)node .
- Systemd service:
Want to run Dad in debug mode? Set the DEBUG
environment variable to true
in the .env
file or in the environment and run the damn thing again.