Project Pythia Cookbooks are collections of more advanced and domain-specific example workflows building on top of Pythia Foundations. They are geoscience-focused and should direct the reader towards the Foundations material for any required background knowledge.
The following is a step-by-step guide to getting your cookbook idea hosted on the Project Pythia Cookbooks gallery.
- Use the template
- If you don't already have a GitHub account, create one by following the Getting Started with GitHub guide
- On https://github.com/ProjectPythiaCookbooks/cookbook-template, click "Use this template"
- Choose "Include all branches"
- Create the repo under your account with a descriptive name, followed by
-cookbook(e.g.hydrology-cookbook,hpc-cookbook,cesm-cookbook, etc.) by entering a name into the "Repository name" field and clicking on "Create repository from template" - Your browser should be directed to the newly created repository under your GitHub account. Under Settings, enable GitHub Pages by changing the Source from "None" to
gh-pagesand clicking on "Save" - Clone the repo in your local workspace and
cdinto your cookbook directory
- Create the environment
- Within
environment.yml, changename:fromcookbook-devto<your-cookbook-name>-dev(e.g.cesm-cookbook-dev) and add all required libraries and other dependencies underdependencies:. Commit the changes - Create the Conda environment with
conda env create -f environment.yml. If it crashes, try runningconda config --set channel_priority strict - Activate your environment with
conda activate <env-name>
- Within
- Add content
- After creating a new git branch, edit (and duplicate as necessary) the notebook template
notebooks/notebook-template.ipynbto add your content. Add folders to organize notebooks into sections if applicable - Add the notebooks to
_toc.yml. Seeradar-cookbook/_toc.ymlfor syntax - Replace the
thumbnail.svgwith a thumbnail image relevant to your cookbook - Change
README.mdto include your cookbook title, a sentence or two describing the cookbook, and if desired embed your thumbnail image. See the Radar Cookbook for an example - In the badge links in
README.md, changecookbook-templateto your cookbook repo name. - Commit your changes with git, and open a Pull Request on your cookbook repo. When you open a PR there, the github-actions bot will comment a link to a preview of your cookbook
- After creating a new git branch, edit (and duplicate as necessary) the notebook template
- Transfer cookbook to the ProjectPythiaCookbooks organization
- Navigate to the settings of your repo, scroll down to the Danger Zone, and click "Transfer"
- For ProjectPythiaCookbooks owners or members: type "ProjectPythiaCookbooks", confirm, and transfer.
- For outside contributors:
- Contact an owner of ProjectPythiaCookbooks to be added as an outside collaborator. Then transfer to ProjectPythiaCookbooks; or
- Type the username of an owner or member. They will then tranfer it to ProjectPythiaCookbooks and add you as an outside collaborator on that repo
- Open issues, PRs, and continue making edits as necessary
- Navigate to the settings of your repo, scroll down to the Danger Zone, and click "Transfer"