# Galactic Bot Welcome to the Galactic Bot repository. I've decided to open this up as I struggle to find motivation and time to work on this, so contributions welcome. I do require that any contributions conform to the linter rules present and code should strive to be legible and follow generally good programming practises. Pull requests must explain what they change/add and why. Discussion and questions are to be had in the [discord server](https://discord.gg/WDCTKGp). I will hopefully expand on this file and add others to help document this project, as it stands there is very little internal documentation. Internal/technical documentation will be in the source files adjacent to the code. ## Getting started ### Requirements - Node.js (unsure what the lowest supported version is, but I work with v22.2.0) - MongoDB (7.0.6 as of writing this) - MariaDB (TBD) - RabbitMQ (maybe, TBD) A Docker compose file is available for convenience for setting up databases for development or personal deployment. ### Running - Install the dependencies: `yarn install` - Run the bot: `yarn start` If you run into an error about yarn missing, run [`corepack enable`](https://nodejs.org/docs/latest/api/corepack.html). ### Developing The workflow for this is not particularly formal as this has been mostly a solo project as of recent. - Make a new branch and name it after the feature/contribution - Make sure the code you write complies with the linter rules - Make sure your code runs and works as intended. - Write descriptive commits. If you're changing/adding a lot of different things, combine them theme/feature wise into separate commits. - Open a new pull request to the development branch with a description of the changes. The deployment flow is as follows: New feature branch -> development (local bots) -> alpha (QA) -> beta (GalacticTest) -> main (GalacticBot) ## TODO - Unit tests - Proper workflows with gitea actions. - Linter - Build test - Unit tests # Contributors **Nolan** - https://github.com/noolaan Major framework contributions to V3 development.