Skip to content

Latest commit

 

History

History
104 lines (69 loc) · 3.42 KB

File metadata and controls

104 lines (69 loc) · 3.42 KB

Contributing to BotWave

Thank you for your interest in contributing to BotWave!
Contributions of all kinds are welcome, whether it’s code, documentation, bug reports, or suggestions.

Please take a moment to read this guide before contributing.

Ways to Contribute

You can contribute by:

  • Reporting bugs
  • Suggesting new features or improvements
  • Improving documentation
  • Submitting pull requests
  • Reviewing existing pull requests

Reporting Bugs & Issues

If you encounter a bug or unexpected behavior, please open an issue in the
/issues section.

When reporting an issue, try to include:

  • A clear and descriptive title
  • Steps to reproduce the issue
  • Expected behavior vs actual behavior
  • Relevant logs, screenshots, or error messages
  • Your environment (OS, version, setup, etc.)

Security vulnerabilities should NOT be reported via issues.
Please refer to the SECURITY.md file for responsible disclosure instructions.

Feature Requests

Feature requests are welcome!
Before opening a new issue, please check if a similar request already exists.

When suggesting a feature:

  • Explain the problem it solves
  • Describe the proposed solution
  • Mention any alternatives you’ve considered

Pull Requests

We’re happy to review pull requests!

Before submitting a PR:

  • Fork the repository and create a new branch
  • Keep changes focused and relevant
  • Follow the existing code style and structure
  • Test your changes where applicable
  • Update documentation if needed

When opening a pull request:

  • Clearly describe what your PR does
  • Reference related issues if applicable
  • Be open to feedback and requested changes

Code Style & Guidelines

  • Keep code clean, readable, and well-organized (at least try to)
  • Avoid unnecessary dependencies
  • Comment complex or non-obvious logic
  • Please type your python code. Avoid using the typing module if you can use a builtin type instead.

Commit Messages

Even though we won't reject contributions that don't follow our commit formatting, we'd appreciate it if you followed this pattern when writing commits:

[<component>] <path>: <commit message>

The message is made up of 3 parts:

  • Component: the specific part of the project affected by the change. Examples: client, server, docs, workflows, etc. If you can't find a specific enough component, you can use a generic term such as project.
  • Path: the path within that component. To avoid long paths, you can omit the part that's already implied by the component. For example, if the component is workflows, you can simply write wiki-mirror.yml and we'll understand that the commit concerns .github/workflows/wiki-mirror.yml. If the commit affects multiple paths, you can use globbing, or separate them with commas. Examples: ops/*.py, shared/tls.py, shared/http.py.
  • Commit message: a short message describing your changes.

Examples

[server] ops/live.py: fix ALSA rate being wrongly sent
[client] client.py: better exception handling
[docs] README.md: update installation steps
[workflows] wiki-mirror.yml: ensure the new commit recommendation
[docs] client/client.md: updated cli documentation

Community & Conduct

Be respectful and constructive in discussions.
Harassment, hate speech, or hostile behavior will not be tolerated.

Questions

If you’re unsure about anything, feel free to open an issue and ask.

Thanks for helping make BotWave better <3