Skip to content

Contributing to the OTOBO Open Source Project

Contributing to the OTOBO Open Source Project

Section titled “Contributing to the OTOBO Open Source Project”

OTOBO is open source under the GitHub organization RotherOSS (https://github.com/RotherOSS/otobo). If you want to report bugs or contribute your own code, follow this workflow:


  1. Create a fork of https://github.com/RotherOSS/otobo.
  2. Clone your fork locally:
    Terminal window
    git clone https://github.com/<your-user>/otobo.git
    cd otobo

Create a new branch for every change:

Terminal window
git checkout -b feature/<short-description>

Example:

Terminal window
git checkout -b feature/add-hello-world-module
  1. Implement your code.

  2. Add meaningful commit messages:

    Terminal window
    git add .
    git commit -m "Adds HelloWorld module with basic functionality"
  3. Push your branch:

    Terminal window
    git push origin feature/add-hello-world-module
  1. Open your fork on GitHub.
  2. Click on Compare & pull request.
  3. Briefly describe in the PR text what your feature/bugfix does and why it is important.
  4. Select the correct target branch (usually master or development).

RotherOSS uses the tool CodePolicy (https://github.com/RotherOSS/CodePolicy) to check coding standards.

  • Installation:

    Terminal window
    cpanm CodePolicy
  • Execute in the repo root:

    Terminal window
    CodePolicy --check .
  • Every Kernel::System::* and Kernel::Modules::* module must contain POD documentation.
  • Declare dependencies in our @ObjectDependencies.
  • Ensure you use use strict; use warnings;.

OTOBO uses Mojolicious tests and [Test::More]. Place your tests in t/:

Terminal window
prove -l t/MyModule.t

  • Search for existing issues first.
  • Create an issue with a title, reproduction steps, logs, and screenshots (if necessary).
  • Use the labels bug, enhancement, question.
  • Follow the issue and PR templates in the repo.
  • Respond promptly to review comments in the PR.
  • Add tests or change style if reviewers suggest it.
  • After approval, your PR will be merged.

Good luck with contributing to OTOBO!