FINESSE¤
A graphical user interface for controlling and monitoring an interferometer device.
For developers¤
Technical documentation is available on FINESSE's GitHub Pages site.
This is a Python application that uses poetry for packaging and dependency management. It also provides pre-commit hooks (for Black and Flake8) and automated tests using pytest and GitHub Actions. Pre-commit hooks are automatically kept updated with a dedicated GitHub Action.
To get started:
- Download and install Poetry following the instructions for your OS.
- Clone this repository and make it your working directory
- Set up the virtual environment:
bash
poetry install
- Activate the virtual environment (alternatively, ensure any python-related command is preceded by
poetry run
):
bash
poetry shell
- Install the git hooks:
bash
pre-commit install
- Run the main app:
bash
python -m finesse
- Run the tests:
bash
pytest
-
Build the user guide:
-
Install pandoc
-
bash python docs/gen_user_guide.py