BatBot is a comprehensive chatbot solution for live streaming platforms, including Kick, Twitch, and YouTube. It offers moderation and entertainment features to help streamers automate and enhance their chat experience.
- Multi-platform support: Kick, Twitch, YouTube (coming soon)
- Custom commands
- Command import from other popular bots (StreamElements, NightBot)
- Analytics dashboard
- User-friendly web interface
The project is organized as a monorepo with the following main components:
apps/web: Next.js web application for the user interfaceapps/bot: Bot applicationpackages/core: Shared core functionalitypackages/db: Database-related code and Prisma schemapackages/types: Shared TypeScript types
- Node.js (v18+)
- Bun
- PostgreSQL database
- Clone the repository
- Install dependencies:
bun install- Set up environment variables (refer to
.env.examplefiles in each app/package) - Generate Prisma client:
cd packages/db
bunx prisma generate- Run database migrations:
cd packages/db
bunx prisma migrate devTo run the development servers:
bun run devThis will start both the web application and the bot in development mode.
To build the project for production:
bun run buildThe project is set up for deployment using Docker and CapRover. Refer to the following files for deployment configuration:
Dockerfilecaptain-definition
Contributions are welcome! Please feel free to submit a Pull Request.
This project is licensed under the MIT License.
For any questions or support, please join our Discord server or visit https://batbot.live (offline at the moment).