https://github.com/sosiristseng/template-juliabook
Publish Julia Jupyter notebooks
https://github.com/sosiristseng/template-juliabook
julia jupyter-book jupyter-notebook literate parallel
Last synced: 23 days ago
JSON representation
Publish Julia Jupyter notebooks
- Host: GitHub
- URL: https://github.com/sosiristseng/template-juliabook
- Owner: sosiristseng
- License: mit
- Created: 2023-12-08T07:54:22.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2025-02-18T06:07:02.000Z (over 1 year ago)
- Last Synced: 2025-02-18T06:34:01.548Z (over 1 year ago)
- Topics: julia, jupyter-book, jupyter-notebook, literate, parallel
- Homepage: https://sosiristseng.github.io/template-juliabook/
- Size: 224 KB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
README
# Julia Jupyter / Literate Notebooks Template
> Template for publishing Julia Jupyter / Literate notebooks
Click `Use this template` button to copy this repository.
Publish Julia notebooks using [Jupyter Book](https://jupyterbook.org/stable/).
- Supports both [Literate](https://github.com/fredrikekre/Literate.jl) (`*.jl`) and Jupyter (`*.ipynb`) notebooks. Jupyter notebooks will be converted to the Literate format before execution.
- Supports multi-processing (setting `LITERATE_PROC` in `ci.yml`) and runs notebooks in parallel in GitHub actions. See `ci.yml`.
- Automatic dependency updates by dependabot and `update-manifest.yml` GitHub actions.
- Checks if the links in the notebooks are valid with `lychee`. (See `linkcheck.yml`)
See also:
- https://github.com/sosiristseng/template-juliabook : Using multiprocessing to run Literate notebooks in parallel. Jupyter Book builds the website.
- https://github.com/sosiristseng/template-juliabook-matrix : Using the dynamic parallel matrix to run Literate notebooks in parallel. Jupyter Book builds the website.
- https://github.com/sosiristseng/template-quarto-julia-matrix : Using the dynamic parallel matrix to run Literate notebooks in parallel. Quarto builds the website.
- https://github.com/sosiristseng/template-quarto-julia : Using multiprocessing to run Literate notebooks in parallel. Quarto builds the website.
## You need to enable GitHub pages
From your repository settings => Pages => GitHub Pages => Build and deployment => Source, select `GitHub actions`.
## Automatic dependency updates
See `.kodiak.toml` and `dependabot.yml`.
This repository uses [Dependabot](https://docs.github.com/en/code-security/getting-started/dependabot-quickstart-guide) and [Kodiak Bot](https://kodiakhq.com/docs/quickstart) to automatically merge Python and GitHub actions updates.
### Julia dependencies
See `update-manifest.yml`.
This repository can regularly update Julia in the `Manifest.toml`, make a PR with the updated packages, and automatically merge the updates if the notebooks are executed without any problem.
See [the instructions](https://github.com/peter-evans/create-pull-request/blob/main/docs/concepts-guidelines.md#triggering-further-workflow-runs) for how to trigger CI workflows in a PR. This repo uses my [GitHub APP](https://github.com/peter-evans/create-pull-request/blob/main/docs/concepts-guidelines.md#authenticating-with-github-app-generated-tokens) to generate a token on the fly.