Stormix / bot

A multipurpose twitch/discord bot written in TypeScript

Home Page:https://stormix.co/projects/bot

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

(WIP) Bot

Deploy Bot

A multipurpose twitch/discord bot written in TypeScript. This project is a monorepo, which contains the following packages:

  • bot - The main bot package
  • language - A simple interpreted dynamic programming language for describing chat bot commands and behavior based of Bex but in TypeScript.

Stack

Very opinionated stack, but it works for me.

Features / ToDo:

Check the .todo file for the current feature set.

Skills

Conversational

Bot uses an AI model to respond to messages in chat and discord DMs. The model is based of GODEL and will be trained on my own dataset in the future.

Installation

Prerequisites

Setup

git clone https://github.com/Stormix/bot.git
cd bot
pnpm install
cp .env.example .env # and fill in the values

Environment Variables

Name Description
ENABLED Determines if the bot is enabled or not
SENTRY_DSN Sentry.io DSN used for error logging and monitoring
NODE_ENV Environment mode for Node.js (e.g. development, testing)
TWITCH_CLIENT_ID Twitch API client ID used for accessing Twitch API
TWITCH_ACCESS_TOKEN Twitch API access token used for authentication
TWITCH_REFRESH_TOKEN Twitch API refresh token used for token refresh
TWITCH_USERNAME Twitch account username for the bot
DISCORD_TOKEN Discord API token used for authentication
DISCORD_GUILD_ID Discord server/guild ID where the bot is installed
DISCORD_OWNER_ID Discord user ID of the bot owner
DATABASE_URL URL of the database used for the bot
PORT API listening port
REDIS_PORT Redis port
REDIS_HOST Redis host
REDIS_PASSWORD Redis password
REDIS_USERNAME Redis username

Docker

Build

  set DOCKER_BUILDKIT=1 && docker buildx build  --progress=plain -t bot --no-cache .
docker run -dp 3000:3000 bot

Issues

If you come across any issues please report them here.

Contributing

Thank you for considering contributing to this project! Please feel free to make any pull requests, or e-mail me a feature request you would like to see in the future to hello@stormix.co.

Security Vulnerabilities

If you discover a security vulnerability within this project, please send an e-mail to hello@stormix.co, or create a pull request if possible. All security vulnerabilities will be promptly addressed.

About

A multipurpose twitch/discord bot written in TypeScript

https://stormix.co/projects/bot

License:MIT License


Languages

Language:TypeScript 98.4%Language:JavaScript 0.9%Language:Dockerfile 0.7%