ZumitoTeam / zumito-bot

Discord Bot
GNU General Public License v3.0
4 stars 1 forks source link
bot discord discord-bot discord-js nodejs typescript

Zumito banner

Website ā€¢ Discord server ā€¢ Documentation (WIP)

Zumito šŸ§ƒ

CodeFactor GitHub Repo stars

Multipurpose discord bot

Tech stack

Getting started

Setup project

To start editing the bot you need to download the project

git clone https://github.com/fernandomema/Zumito.git
cd Zumito

Next steep is to download project dependencies

npm install

And finally copy .env.example to .env and edit your tokens and DB info.

cp .env.example .env

Start bot

To start bot you just need to run that command on project root

npm start

Contributing

We have a lot of work and need for a lot of help. For this reason any help is welcome and we have organized some of the main options in which you can contribute with your grain of sand. Please note that if you have any other ideas on how to contribute we are all ears, we are not limited to the following list.

Submiting bug or error

If you found an error using the bot feel free to open issue and tell us what happen. Is important you provide as much details as you can, cause we need to be able to reproduce the error in order to find a solution.

Submiting ideas

Ideas are always welcome, inspiration is something that cannot be bought. So if you have any idea for the bot feel free to tell us what you think opening a new issue

Translating

Knowledge of a language is a great way to open doors to the whole world, so if you know a language you can always bring Zumito to a lot of new people. Just create a pull request with the new language file and we will review it.

Workflow

There is a little summary of how we work.

New command

Arrival

First, a command comes from an issue or a project task. If the description does not come with an example output (embeds, designs, etc), the task will be moved to "pendind definition" status on our project board.

Definition

Durint this stage, we will recolect the needed info for start developing the command (embeds design/structure, required assets, etc) and define the posible inputs and outputs of that command. and then the task will be moved to "backlog status"

Task selection

Each time we complete the tasks unde the "current iteration" status, we select the following tasks that we will work on. It is similar to an agile sprint, but since we work as a hobby there is no ETA for each sprint/iteration.

Development

Each time we start working on a command, We assign ourselves to the issue and a bot will automatically create a branch for that issue. We work on it until development is done. Then we will create an pull request using the new_command.md template, filling the use case test with all posible inputs and outputs to verify all of them are working properly. Finally before merge it into main branch at least one member of the repo will review and approve the request to ensure the pull request will not break the bot.