Contributing#

There are many ways to contribute to SigimaX, depending on how much time you have, your experience with open source projects, and your skills.

Share your ideas and experiences#

No coding required

Besides the classic bug reports and feature requests, you can share your ideas and experiences for improving SigimaX. In particular, we are very interested in your feedback on the documentation and tutorials. Moreover, if you have a use case that you would like to share with the community, please let us know.

Share your scientific/technical knowledge#

No coding required

Your technical or scientific knowledge is also very valuable to us. You may contribute documentation or tutorials directly. Or, if you want to write a tutorial, we will be happy to help you get started.

Without coding, you can contribute to SigimaX project by:

  • Writing documentation

  • Writing a tutorial

  • Sharing a use case of a derived application

Contribute code#

Coding (beginner) Coding (advanced)

Even if you are not an experienced developer, you can contribute to the project by:

  • Testing new features

  • Writing or improving tests

  • Reporting and fixing bugs

If you are a developer, you can contribute to the core of the project by fixing bugs or implementing new features.

Development setup#

  1. Clone the repository:

    $ git clone https://github.com/DataLab-Platform/SigimaX.git
    $ cd SigimaX
    $ pip install -e .[dev,doc]
    
  2. Run the tests:

    $ python scripts/run_with_env.py python -m pytest
    
  3. Format and lint:

    $ python -m ruff format
    $ python -m ruff check --fix
    

Code conventions#

  • Use from __future__ import annotations in all modules

  • Define __all__ in all public modules

  • Wrap UI strings with _() for internationalization

  • Follow Google-style docstrings

  • Use snake_case for functions, PascalCase for classes