Skip to content

Latest commit

 

History

History
58 lines (44 loc) · 2.29 KB

CONTRIBUTING.md

File metadata and controls

58 lines (44 loc) · 2.29 KB

Contributing Guidelines

Thank you for contributing to this project! To maintain a high standard of quality, we use conventional commit conventions. This document will guide you through the best practices for commits and branch management.

Table of Contents

  1. Commit Conventions
  2. Branch Naming
  3. Naming conventions
  4. Doxygen
  5. Includes

Commit Conventions

We use the Conventional Commits commit conventions. This ensures a clear and meaningful commit history. Other useful link

Branch Naming

To maintain an organized repository, we have naming conventions for branches. Here are the branch types and their formats:

  • feature : For new features -> feat/<short description>
  • bugfix : For bug fixes -> bugfix/<short description>
  • hotfix : For urgent fixes -> hotfix/<short description>
  • refactor : For refactoring -> refactor/<version>
  • documentation : For adding or updating documentation -> doc/<short description>

Please adhere to these conventions to facilitate collaboration and project maintenance. Happy coding!

Naming conventions

We follow a mix between the Epitech coding-style and our in-house coding style.

  • In C : snake_case (Epitech)
  • In C++ :
    • variables = camelCase
    • classes = PascalCase
    • functions = camelCase
    • constants = ALL_CAPS
    • macros = ALL_CAPS
    • namespaces = PascalCase
    • enums = camelCase
    • structs = snake_case
    • files & folders = PascalCase
    • root folders = snake_case
  • In Python : Same as our C++ conventions

Doxygen

We use doxygen to document our code. Some keys:

  • If it is a sentence, always start with an uppercase and end comment with a dot.
  • For classes variables, comment right after //.

Includes

  • Always include the necessary headers ONLY.
  • Always include the headers in the following order:
    • Project headers
    • Standard library headers
  • Include headers from the shortest to the longest.