Skip to content

Customizable personal bot for any text platform with an API

Notifications You must be signed in to change notification settings

TulioAbreu/shazow-bot

Repository files navigation

ShazowBot

Gitmoji Tests

ShazowBot is my personal chat bot for general and useless stuff. The main focus here is making the bot flexible enough to support any environment (discord, twitch, etc.) by simply implementing the message listener, message parser and action execution.

Package Structure

Codebase Description
Chat Normalizes multiple environments input/output
Server Bot implementation
Api Bot database management API
Front Bot database management front
Database Models and Repositories
Utils General utils

Settings

For .env settings, the following properties are needed:

  • MONGODB_CONNECTION_URL: MongoDb connection URL for storing/retrieving models.

  • DISCORD_TOKEN: Discord Bot Token.

  • TWITCH_USERNAME: Your bot twitch username.

  • TWITCH_TOKEN: Your TWITCH_USERNAME generated oauth token

For general (and not sensitive data), we use config.json:

  • prefix: Prefix used for commands

  • trollCommandThreshold: Troll commands are ignored since they generally dont mean anything besides trying to find problems inside the bot implementation. The threshold is the minimum message size for classifying it as troll

  • twitchChannels: List of twitch channels to connect with

Repository Commands

  • build: Build all packages
  • start: Start the bot
  • lint: Run linter
  • new command: Creates new command boilerplate

To see bot available commands, check out this folder.

About

Customizable personal bot for any text platform with an API

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published