Skip to content

Developer Guide

You can contribute to atomphys in different ways.

Report issues

You can report bugs with the package and gaps in documentation on github in the issue tracker. Feel free to also submit feature requests, ask questions, or open general discussions.

Building the code

To contribute to the code or documentation, you will need a suitable python development environment. If you are just getting started we recommend that you clone atomphys from github.

git clone git@github.com:mgrau/atomphys.git
cd atomphys

We recommend create a new python virtual environment for development,

python3 -m venv atomphys_venv
source atomphys_venv/bin/activate

and install atomphys in editable mode, with the optional dependencies for development or for building documentation.

pip install -e .
pip install -r requirements_dev.txt
pip install -r requirements_docs.txt

Install the git hook scripts which performs automated checks of code style before commit

pre-commit install

Running tests

Run unit tests using pytest.

pytest

You can also run the full suite of tests against every atom in the NIST ASD (warning: this is very slow!)

pytest -m ASD

Building documentation

You can build the documentatio and run it in a test server with mkdocs,

$ mkdocs serve
Back to top