Contribution 🦺#

Code of Conduct#

An excellent library needs two things: a clean code with a clean documentation. We are committed to follow most of the Python enhancement proposals mentioned in PEP0. Mainly:

Note

Updates are expected with PEP documents occasionally.

  • PEP8: a clean code that can be easily understood by others.

  • PEP20: guiding principles for Python’s design.

  • PEP257: a clean documentation using NumPy Style guide.

  • PEP 585: Type Hinting Generics In Standard Collections.

    • Note that PEP484 is not needed since most annotations from typing module are deprecated. For more information, check the typing module documentation.

Future developers and engineers who intend to contribute to this library should always keep in mind these standards to keep the source code clean and easy to follow. This should allow developing complex reservoir simulation models that are both innovative and efficient.

Load Repository#

You can load project files directly from the official GitHub repository. Skip this step if you want to install this library using pip command directly.

  • Download reservoirflow repository from GitHub:

    git clone https://github.com/hiesabx/reservoirflow.git
    
  • Navigate to the project folder:

    cd reservoirflow
    
  • Setup a Python virtual environment:

    python -m venv .venv
    
  • Activate your environment:

    • Windows:

      source .venv/Scripts/Activate
      
    • Linux or Mac:

      source .venv/bin/activate
      
  • Update pip:

    pip install --upgrade pip
    
  • Setup the library:

    pip install -e .
    

    or

    python setup.py install
    

Contribute#

If you are a developer or want to be one, who wants to work on additional features, you need additionally to:

  • Fork this repository in your machine and start learning about the source-code.

  • Create your feature branch:

    git checkout -b my_new_feature
    
  • Try to solve one of our issues. It is also possible that dive deep in a topic of your interest. You can bring a topic with you or work on something that is in our Backlog.

  • Commit your changes:

    git commit -am "Add my new feature"
    
  • Push to the branch:

    git push origin my_new_feature
    
  • Contribute by creating a Pull Request to add features or solve bugs under Issues. Please keep in mind that you need to stick with the project Code of Conduct.

Comments πŸ’¬#

Feel free to make a comment, ask a question, or share your opinion about this specific content. Please keep in mind the Commenting Guidelines βš–.