This template is designed so users can publish quickly with minimal setup using JupyterBook v2 (MyST).
1) Create Your Repository¶
Click Use this template (or fork this repository).
Create your own repository under your GitHub account.
2) Understand Project Structure¶
JupyterBook v2 uses a single config file at the project root:
myst.yml: all project configuration + table of contentsintro.md: landing page of your bookimages/: static assets (images, favicon) — at project root, not insidenotebooks/notebooks/: your content pages (.ipynband.md).github/workflows/: automated build and deploy to GitHub Pages
3) Configure Your Book¶
Edit myst.yml at the project root and set:
project:
title: My Book Title
authors:
- name: Your Name
github: your-github-username
github: https://github.com/your-username/your-repo
license:
code: MIT
content: CC-BY-4.0
# Adds a native JupyterLite "Launch" button to every page
jupyter:
lite: true
banner: images/banner_image.png
toc:
- file: intro
- title: Chapter 1
children:
- file: notebooks/chapter1
site:
template: book-theme
options:
logo: images/banner_image.png
folders: true4) Deployment Model¶
This template comes pre-configured with GitHub Actions and GitHub Pages.
Once enabled, every push to the main branch automatically builds and deploys your site.
To enable deployment:
Go to the Actions tab in your GitHub repository and grant permission if prompted
Go to Settings → Pages
Under Source, select Deploy from workflow
After pushing your changes, your site will be available at:
https://<yourusername>.github.io/<your-repo-name>/
Nice to know before using the template¶
GitHub Account: To create and manage your repository.
Basic Git: Know how to clone, commit, and push changes.
Markdown / MyST: Basic syntax for editing content.
Python (optional): For adding code to notebooks or running scripts locally.
JupyterLite: Runs notebooks in the browser—no installation required.
Google Colab: Optional for cloud-based execution.
Optional Local Preview¶
You can develop fully on GitHub Actions, but local preview is useful for quick checks:
pip install -r requirements.txt
jupyter book startThis starts a live-reloading dev server at http://localhost:3000.
To build static HTML instead:
jupyter book buildThen open _build/html/index.html in your browser.
Keyboard & UI Tips¶
| Tip | How |
|---|---|
| Fullscreen | Click the 🔵 floating button (bottom-right) or press F11 |
| Collapse right outline | Click the small toggle arrow in the “On this page” header |
| Run code in-page | Click the ⚡ power button in the top toolbar to activate JupyterLite |
| Scrollable output | Long outputs scroll automatically inside the cell |
import numpy as np
np.arange(10)