Contribute to ASSUME

July 1, 2026 · View on GitHub

Everyone is welcome to contribute, and we value everybody's contribution. Code contributions are not the only way to help the community. Answering questions, helping others, and improving the documentation are also immensely valuable.

It also helps us if you spread the word! Reference the framework in blog posts about the awesome projects it made possible, use it in your research papers or thesis, or simply ⭐️ the repository to say thank you.

However you choose to contribute, please be mindful and respect our code of conduct.

The user documentation is also a valuable source for developers and can be found here:

Bug reports and issues

You can file issues in our Issue tracker at: https://github.com/assume-framework/assume/issues

For this, a GitHub account is required.

Development setup

If you're contributing to the development of ASSUME, follow these steps:

  1. Clone the repository and navigate to its directory:
git clone https://github.com/assume-framework/assume.git
cd assume
  1. Install the package in editable mode:
pip install -e ".[all]"
  1. Install pre-commit and configure it to run prior to every commit
pip install pre-commit
pre-commit install

To run pre-commit checks directly, use:

pre-commit run --all-files
  1. Install also testing capabilities:
pip install -e ".[test]"
  1. Implement your changes and push the changes to a fork

  2. Create a pull request at https://github.com/assume-framework/assume/pulls

Creating a new release

To release a new version, create a git tag of the release commit and release notes in GitHub (also possible via Draft new release function of GitHub). No adjusted toml file necessary anymore. A GitHub Action automatically uploads the release to PyPI. The upload to PyPI has to be confirmed by one of the core developers.

Building documentation

First, create an environment that includes the documentation dependencies:

Conda

Conda installs the required dependencies and pandoc as well:

conda env create -f environment_docs.yaml

Venv

To use a venv without conda, a system installation of pandoc is required: https://pandoc.org/installing.html

You then need to install the dependencies into your venv using:

pip install -e .[docs]

Building Docs

To generate or update the automatically created docs in docs/source/assume*, run:

sphinx-apidoc -o docs/source -Fa assume

To create and serve the documentation locally, use:

python -m sphinx docs/source docs/build && python -m http.server --directory docs/build

Need some help?

Reach out to us with your questions:

kim.miskiw@kit.edu / manish.khanra@isi.fraunhofer.de / maurer@fh-aachen.de / gunter.grimm@inatech.uni-freiburg.de