Contributing to FuelLib

We welcome contributions! This page covers how to set up your development environment, make changes, and submit pull requests.

Development Setup

Clone the repository and install in editable mode with development dependencies:

git clone https://github.com/NatLabRockies/FuelLib.git
cd FuelLib
pip install -e '.[dev]'

This installs FuelLib with all development tools:

  • Documentation: Sphinx, sphinx-rtd-theme, sphinxcontrib-bibtex

  • Code formatting: Black

  • Testing: pytest

Optional: Conda Environment

To use a specific conda environment:

conda create --name fuellib-env python numpy pandas scipy matplotlib
conda activate fuellib-env
pip install -e '.[dev]'

Contributing Guidelines

New contributions are always welcome! To contribute:

  1. Fork the main repository on GitHub

  2. Create a new branch for your feature: git checkout -b newFeature

  3. Make your changes and update documentation as needed

  4. Ensure development dependencies are installed (see Development Setup above)

  5. Format your code using Black fl-format

  6. Run tests to verify your changes. See .github/workflows/ci.yml for the most up-to-date list of tests run in CI

  7. Open a Pull Request (PR) from your fork to the main FuelLib repository

Building and Viewing Documentation Locally

To build the documentation after installing with pip install -e '.[dev]':

fl-build-docs

The built documentation will be in docs/_build/html/. Open index.html in your browser to view it.

To clean the build artifacts:

fl-clean-docs