Contributing
============


Thank You!
----------

Thank you in advance for your forthcoming contributions, whether they are bug fixes, 
documentation improvements, entirely new features, or simply feedback. Your efforts 
will be highly appreciated and will help turn this project from its current mission 
state into an actual masterpiece.


Design Patterns
---------------

Please read the developer documentation and understand the few design patterns before contributing.
This will help ensure that your contributions align with the project's design and goals.
.. todo:: (okay, the documentation is currently lacking many essential chapters, add.)


Code Formatting
---------------

To help maintain consistent code formatting across different developers, we use 'black' python formatter, by Microsoft.

Strange, the formatter doesn't seem to do that much, it doesn't organize imports, 
doesn't adjust docstring lenghts
.. todo:: most likely I don't know how to use it properly, read the docs.


Using Emacs and Makefile
------------------------

Despite my attempts to fall in love with Eclipse, VSCode and other IDEs, I still find Emacs and Makefile the best
tools for many of my workflows. 
So there is a Makefile in the root folder. For those old dogs who are like me
::
    
    make help

Unit tests
----------
.. todo::  write unit tests

