Skip to content

Contributing to fluxopt

Contributions are welcome — bug reports, code, docs, examples.

Setup

git clone https://github.com/FBumann/fluxopt.git
cd fluxopt
uv sync --group dev
uv run pre-commit install
uv run pytest -v

Workflow

  1. Create a branch from main
  2. Make changes, commit with clear messages
  3. Push and open a PR
  4. Ensure CI passes

Code Quality

Ruff runs automatically via pre-commit. Manual checks:

uv run ruff check --fix .
uv run ruff format .
uv run pytest -v

Testing

Tests live in tests/. Write tests for new functionality.

uv run pytest                              # Full suite
uv run pytest tests/fluxopt/test_data.py # Single file
uv run pytest -k "keyword"                 # By keyword