Skip to content

Latest commit

 

History

History
83 lines (51 loc) · 4.27 KB

CONTRIBUTING.md

File metadata and controls

83 lines (51 loc) · 4.27 KB

Contributing

A big welcome and thank you for considering contributing to CSS' open source projects! We welcome anybody who wants to contribute, and we actively encourage everyone to do so, especially if you have never contributed before.

Quick links

Getting started

If you have never used git before, we would recommend that you read the GitHub's Getting Started guide. Additionally, linked below are some helpful resources:

If you are new to contributing to open-source projects on GitHub, the general workflow is as follows:

  1. Fork this repository and clone it
  2. Create a branch off master
  3. Make your changes and commit them
  4. Push your local branch to your remote fork
  5. Open a new pull request on GitHub

We recommend also reading the following if you're unsure or not confident:

Using the issue tracker

We use GitHub issues to track bugs and feature requests. If you find an issue with the bot, the best place to report it is through the issue tracker. If you are looking for issues to contribute code to, it's a good idea to look at the issues labelled "good-first-issue"!

When submitting an issue, please be as descriptive as possible. If you are submitting a bug report, please include the steps to reproduce the bug, and the environment it is in. If you are submitting a feature request, please include the steps to implement the feature.

Project structure

This bot is written in JavaScript using discord.js and uses Discord's slash commands. We would recommend being somewhat familiar with the library and language terminology before contributing.

  • commands: contains slash commands
    • Each module must export an object with a data parameter with a SlashCommandBuilder.
    • Additionally, there must also be a method execute with an interaction object as its only argument.
  • events: contains event listeners

Making your first contribution

After you have found an issue which needs solving, it's time to start working on a fix! However, there are a few guidelines we would like you to follow first.

Code style

In general, follow the formatting in the file you are editing. We also have ESLint and Prettier files which you can configure your editor to use.

Git commit messages

Commit messages should be written in the imperative, present tense. For example, "Fix bug #1".

Additionally, we request that you keep the commit subject under 80 characters for a comfortable viewing experience on GitHub and other git tools. If you need more, please use the body of the commit.

For example:

Fix TeX becoming sentient

<more detailed description here>

What happens next?

Once you have made your changes, please describe them in your pull request in full. We will then review them and communicate with you on GitHub. We may ask you to change a few things so please do check GitHub or your emails frequently.

After that, that's it! You've made your first contribution. 🎉

License

Please note that any contributions you make will be made under the terms of the Apache Licence 2.0.

Guidance

We aim to get more people involved with our projects, and help build members' confidence in using git and contributing to open-source. If you see an error, we encourage you to be bold and fix it yourself, rather than just raising an issue. If you are stuck, need help, or have a question, the best place to ask is on our Discord.

Happy editing!