Skip to content

Latest commit

 

History

History
67 lines (47 loc) · 1.88 KB

README.md

File metadata and controls

67 lines (47 loc) · 1.88 KB

École Euclid 2023

Author: Samuel Farrens
Email: [email protected]

This repository was made for a course on scientific software development at the 2023 edition of the Euclid Summer School.

The content was updated for the 2024 edition of the Rodolphe Clédassou Summer School

The slides accompanying this repository can be found here.

Example API documentation can be found here.

Requirements

To follow this course you will need to have Python (ideally v3.11) installed with the following dependencies:

  • numpy
  • astropy
  • black
  • isort
  • myst-parser
  • numpydoc
  • pytest
  • pytest-pydocstyle
  • pytest-emoji
  • pytest-cov
  • sphinx
  • sphinx-book-theme
  • twine

Manual install

All of these packages can easily be installed from PyPI using pip.

pip install numpy black ...

Conda install

Alternatively, you can build the Conda environment using the environment.yml file provided.

conda env create -f environment.yml

Then you can activate the environment as follows:

conda activate mycosmo

Docker image

Finally, you can avoid installing any of the packages by simply pulling the provided Docker image. Note that you will need to log in to the GitHub container registry.

docker login ghcr.io ...
docker pull ghcr.io/sfarrens/ecole-euclid-2023:main
docker tag ghcr.io/sfarrens/ecole-euclid-2023:main ecole-rc-2024

Then you can launch an interactive container as follows:

docker run --rm -itv $PWD:/home ecole-rc-2024