Update readme

This commit is contained in:
Erik 2024-07-19 21:30:01 +03:00
parent 2c4c4702b4
commit c081cdc1bf

View File

@ -3,8 +3,41 @@
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.
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)
### 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