This is a rewriting of redbeansoup-bot with much more modules.
Information as I am the only one working in this project, there is no branch strategy. Dev code will be pushed as-is to the main branch. It is not recommanded to touch the code yet.
See the dedicated file doc: Run the project
TL;DR : deno run --import-map import_map.json --allow-all mod.ts
or docker-compose up
after configuration.
- framework/ : See doc: The framework. Custom-made framework that runs the bot, built on top of discordeno
- src/ : See doc: The bot. Stores all bot commands and events
- web-back/ : See doc: The dashboard. Contains the back-end API
- web-front/ : See doc: The dashboard. Contains the front-end dashboard
- database/ : Creates the MySQL Client, and Models + Repositories of all required tables.
- documentation/ : markdown files
Redbeansoup-bot had different flaws that had to be fixed in this rewrite :
- Not typescript compliant (
--no-check
is required to run) - Unmaintainable codebase (lack of organisation in files, codes...), and no code separation between framework (discordeno-related code) and the bot in itself. Difficulty to keep a same codebase compatible with both slash commands and prefix-based message commands.
- No docker support.
- Many bugs that get patched where they should not be, and use of some hacks to get typescript barely working.
Short answer : I don't recommend it. However, feel free to take inspiration (as long as it follows the apache2 license).
Long answser : This is a personal project, to experiment with deno and deepen my knowledge in software architecture w/ Typescript.
Since I cannot warranty I will maintain it, i don't recommend including this project as a direct dependency.
Moreover, it's currently in development (incomplete and subject to change). Instead :
- look at other frameworks, like oasis, which is similar and much more stable.
- Use this repository as template (copy-paste or fork), instead of importing it from the GH URL