Climate Risk Assessment Book
If you'd like to develop and/or build this Climate Risk Assesment book, you should:
- Clone this repository
git clone git@github.com:CLIMAAX/crabook.git
- Go to the the
crabook/
directory that was created by git in the previous stepcd crabook
- Create a Python or Conda virtual environment (example for Conda)
conda create -n crabook python=3.11 pip
- Activate the environment
conda activate crabook
- Install the libraries, choose:
installs only the packages required to build the book, while
pip install -r requirements.txt
additionally installs packages for the development of some components of the book, but which are not required during building.pip install -r requirements-dev.txt
- Find the markdown files and edit what you need.
- Remove any existing builds by running
jupyter-book clean crabook/
- Finally build the book
jupyter-book build crabook/
A fully-rendered HTML version of the book will be built in crabook/_build/html/
.
Open the file crabook/_build/html/intro.html
and navigate to the material you changed to check if everything is as expected.
Once you're happy with the changes, create a new branch, commit your changes and send us a pull request if you'd like to contribute.
The Python/Conda environment is needed only for building the book, so you can activate it after editing the files.
- Edit the book's source files located in the
crabook/
directorycd crabook/crabook
- Activate the environment
conda activate crabook
- Remove any existing builds by running
jupyter-book clean crabook/
- Finally build the book
jupyter-book build crabook/
- The
_build
directory has been added to.gitignore
, so when you build the book and add files in git, they will not end up on GitHub. - If you clone the repo in this early phase and work on Jupyter notebooks, you might download some data. Please keep all data in folder named
data
, as that is also set up in.gitignore
and not pushed to the repo. - Please do not add new notebooks to this repo without them being reviewed by project partners.
- If you did add some markdown files or notebooks, make sure they are listed in the
_toc.yml
file too, otherwise they will not be added to the book.
TLDR: To have a page show up in our production version of the CRA book, it has to be added to crabook/_toc_prod.yml
.
The build process on GitHub in .github/workflows/build-deploy-book.yml
contains a step to detect the repository it is started from. If this repository is CLIMAAX/crabook
, the default table of contents crabook/_toc.yml
is replaced by the file crabook/_toc_prod.yml
. This enables us to hide pages in the production repository that are still under development in our test repository without having to edit the table of contents file back-and-forth every time changes are pushed to production.
- If you are unsure of what to do you can go through Jupyter Book tutorial and build an example book to practice before contributing here.
- Find out how to structure the book here: Structure of the book.
- Read about writing narrative content without the executable part in this section.
We are using powerful MyST Markdown flavour of Markdown which is very convenient for technical and scientific documentation.
- Link to the Full MyST Markdown documentation - to learn your basics.
- Link to the MyST Markdown cheat sheet - for when you forget some syntax.
We welcome and recognize all contributions. You can see a list of current contributors in the contributors tab.
This project is created using the excellent open source Jupyter Book project and the executablebooks/cookiecutter-jupyter-book template.