diff --git a/.github/dependabot.yml b/.github/dependabot.yml
new file mode 100644
index 0000000..01a563c
--- /dev/null
+++ b/.github/dependabot.yml
@@ -0,0 +1,22 @@
+# To get started with Dependabot version updates, you'll need to specify which
+# package ecosystems to update and where the package manifests are located.
+# Please see the documentation for all configuration options:
+# https://docs.github.com/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file
+
+version: 2
+updates:
+ - package-ecosystem: "gitsubmodule" # See documentation for possible values
+ directory: "/" # Location of package manifests
+ schedule:
+ interval: "weekly"
+ day: "sunday"
+ time: "22:59"
+ - package-ecosystem: "pip" # See documentation for possible values
+ directory: "/" # Location of package manifests
+ schedule:
+ interval: "weekly"
+ day: "sunday"
+ time: "22:59"
+ ignore:
+ - dependency-name: "sphinx-thebe"
+ - dependency-name: "docutils"
diff --git a/.github/workflows/call-deploy-book.yml b/.github/workflows/call-deploy-book.yml
index bec1772..8a86e57 100644
--- a/.github/workflows/call-deploy-book.yml
+++ b/.github/workflows/call-deploy-book.yml
@@ -4,13 +4,15 @@ on:
push:
branches:
- '**'
- # If your git repository has the Jupyter Book within some-subfolder next to
+ # - '!dependabot**'
+ # If your git repository has the TeachBooks / Jupyter Book v1 within some-subfolder next to
# unrelated files, you can make this run only if a file within that specific
# folder (or the workflow file itself) has been modified.
#
paths:
- book/**
- .github/workflows/call-deploy-book.yml
+ - requirements.txt
workflow_dispatch:
jobs:
diff --git a/.gitignore b/.gitignore
index 72818e9..646bdab 100644
--- a/.gitignore
+++ b/.gitignore
@@ -135,3 +135,9 @@ _contents/
# Jupyterlite
_output/
book/.jupyterlite.doit.db
+
+# TeachBooks
+**.teachbooks/
+book/_toc_with_local_paths.yml
+book/_git/
+book/conf.py
\ No newline at end of file
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
deleted file mode 100644
index 333f76d..0000000
--- a/.gitlab-ci.yml
+++ /dev/null
@@ -1,70 +0,0 @@
-stages:
- - test
- - build
- - deploy
-variables:
- PIP_CACHE_DIR: "$CI_PROJECT_DIR/.cache/pip"
- REGISTRY_HOST: localhost:5000
- TAG_LATEST: $REGISTRY_HOST/$CI_PROJECT_NAME/$CI_COMMIT_REF_NAME:latest
- TAG_DRAFT: $REGISTRY_HOST/$CI_PROJECT_NAME-draft/$CI_COMMIT_REF_NAME:latest
- GIT_SUBMODULE_STRATEGY: recursive # For submodules
-cache:
- paths:
- - .cache/pip
-# This job tests if the book compiles gracefully after a new addition
-test-build:
- stage: test
- image: continuumio/miniconda3
- rules:
- - if: $CI_PIPELINE_SOURCE == "merge_request_event"
- script:
- - pip install -r requirements.txt
- - jupyter-book clean book/
- - jupyter-book build book/
-# This job builds the Docker container
-build-book:
- stage: build
- image: docker
- rules:
- - if: $CI_COMMIT_BRANCH == "release" && $CI_PIPELINE_SOURCE == "push"
- variables:
- TAG: $TAG_LATEST
- - if: $CI_COMMIT_BRANCH == "main" && $CI_PIPELINE_SOURCE == "push"
- variables:
- TAG: $TAG_DRAFT
- before_script:
- - docker info
- script:
- - if [ "$TAG" = "$TAG_LATEST" ]; then sed --in-place=".bak" '/# START DRAFT/,/# END DRAFT/{//!d}' book/_config.yml; fi
- - docker build -t $TAG .
- - docker push $TAG
-# This job takes down the existing container and starts the new one
-deploy-book:
- stage: deploy
- image: docker
- rules:
- - if: $CI_COMMIT_BRANCH == "release" && $CI_PIPELINE_SOURCE == "push"
- before_script:
- - docker info
- - docker stop $CI_PROJECT_NAME || exit_code=$?
- - if [ $exit_code -ne 0 ]; then echo "Container not found, cannot stop"; else docker rm $CI_PROJECT_NAME; fi
- script:
- - docker run -d --restart always -p 8000:8000 --name $CI_PROJECT_NAME $TAG_LATEST # Make sure to use a different port for each book!
- environment:
- name: production
- url: https://interactivetextbooks.citg.tudelft.nl/jupyter-book-manual
-# Deploy the draft version of the book
-deploy-draft:
- stage: deploy
- image: docker
- rules:
- - if: $CI_COMMIT_BRANCH == "main" && $CI_PIPELINE_SOURCE == "push"
- before_script:
- - docker info
- - docker stop $CI_PROJECT_NAME-draft || exit_code=$?
- - if [ $exit_code -ne 0 ]; then echo "Container not found, cannot stop"; else docker rm $CI_PROJECT_NAME-draft; fi
- script:
- - docker run -d --restart always -p 8018:8000 --name $CI_PROJECT_NAME-draft $TAG_DRAFT
- environment:
- name: draft
- url: https://interactivetextbooks.citg.tudelft.nl/jupyter-book-manual-draft
\ No newline at end of file
diff --git a/.gitmodules b/.gitmodules
index 0b07f19..4b36129 100644
--- a/.gitmodules
+++ b/.gitmodules
@@ -1,27 +1,60 @@
[submodule "book/external/Nested-Books"]
path = book/external/Nested-Books
url = https://github.com/TeachBooks/Nested-Books.git
+ branch = manual-description
[submodule "book/external/template"]
path = book/external/template
url = https://github.com/TeachBooks/template.git
+ branch = manual_description
[submodule "book/external/deploy-book-workflow"]
path = book/external/deploy-book-workflow
url = https://github.com/TeachBooks/deploy-book-workflow.git
-[submodule "book/external/latex-to-markdown-conversion"]
- path = book/external/latex-to-markdown-conversion
- url = https://gitlab.tudelft.nl/opentextbooks/latex-to-markdown-conversion.git
+ branch = manual_docs
[submodule "book/external/Useful_python_code"]
path = book/external/Useful_python_code
url = https://github.com/TeachBooks/Useful_python_code.git
-[submodule "book/external/TeachBooks"]
- path = book/external/TeachBooks
- url = https://github.com/TeachBooks/TeachBooks.git
+ branch = manual
[submodule "book/external/Sphinx-Image-Inverter"]
path = book/external/Sphinx-Image-Inverter
url = https://github.com/TeachBooks/Sphinx-Image-Inverter.git
-[submodule "book/external/JupyterBook-Patches"]
- path = book/external/JupyterBook-Patches
- url = https://github.com/TeachBooks/JupyterBook-Patches.git
+ branch = Manual
[submodule "book/external/Download-Link-Replacer"]
path = book/external/Download-Link-Replacer
url = https://github.com/TeachBooks/Download-Link-Replacer.git
+ branch = manual_docs
+[submodule "book/external/Sphinx-Grasple-public"]
+ path = book/external/Sphinx-Grasple-public
+ url = https://github.com/TeachBooks/Sphinx-Grasple-public.git
+ branch = manual_docs
+[submodule "book/external/Sphinx-TUDelft-theme"]
+ path = book/external/Sphinx-TUDelft-theme
+ url = https://github.com/TeachBooks/Sphinx-TUDelft-theme.git
+ branch = Manual
+[submodule "book/external/teachbooks-sphinx-tippy"]
+ path = book/external/teachbooks-sphinx-tippy
+ url = https://github.com/TeachBooks/teachbooks-sphinx-tippy.git
+ branch = Manual
+[submodule "book/external/annotater"]
+ path = book/external/annotater
+ url = https://github.com/TeachBooks/annotater
+ branch = manual
+[submodule "book/external/Sphinx-launch-buttons"]
+ path = book/external/Sphinx-launch-buttons
+ url = https://github.com/TeachBooks/Sphinx-launch-buttons.git
+ branch = manual
+[submodule "book/external/Sphinx-Named-Colors"]
+ path = book/external/Sphinx-Named-Colors
+ url = https://github.com/TeachBooks/Sphinx-Named-Colors.git
+ branch = manual
+[submodule "book/external/sphinx-iframes"]
+ path = book/external/sphinx-iframes
+ url = https://github.com/TeachBooks/sphinx-iframes.git
+ branch = manual
+[submodule "book/external/Sphinx-PRIME-applets"]
+ path = book/external/Sphinx-PRIME-applets
+ url = https://github.com/TeachBooks/Sphinx-PRIME-applets.git
+ branch = manual
+[submodule "book/external/JupyterBook-Patches"]
+ path = book/external/JupyterBook-Patches
+ url = https://github.com/TeachBooks/JupyterBook-Patches.git
+ branch = manual_docs
diff --git a/CITATION.cff b/CITATION.cff
new file mode 100644
index 0000000..971b3d2
--- /dev/null
+++ b/CITATION.cff
@@ -0,0 +1,51 @@
+# This CITATION.cff file was generated with cffinit.
+# Visit https://bit.ly/cffinit to generate yours today!
+
+cff-version: 1.2.0
+message: 'If you use this Book, please cite it using these metadata.'
+authors:
+ - email: info@teachbooks.io
+ name: 'TeachBooks Development Team'
+ website: 'https://teachbooks.io/'
+title: 'TeachBooks Manual source code'
+preferred-citation:
+ type: book
+ authors:
+ - email: info@teachbooks.io
+ name: 'TeachBooks Development Team'
+ website: 'https://teachbooks.io/'
+ url: 'https://doi.org/10.5281/zenodo.15100847'
+ identifiers:
+ - type: doi
+ value: 10.5281/zenodo.15100848
+ description: Zenodo record
+ - type: url
+ value: 'https://teachbooks.io/manual/'
+ description: 'Published book on GitHub Pages'
+ - type: url
+ value: 'https://github.com/TeachBooks/manual'
+ description: 'GitHub repository'
+ abstract: >-
+ his manual assists you in creating and collaborating on TeachBooks
+ for educational purposes. Some parts are specifically aimed for
+ teachers at Delft University of Technology, although all material and
+ tools are openly available. This manual aims at providing an easy start
+ and advanced usages for new and existing users with or without skills
+ on this topic.
+ keywords:
+ - TeachBooks
+ - Manual
+ - 'Jupyter Book'
+ title: 'TeachBooks Manual'
+ institution:
+ name: 'TeachBooks'
+ license: CC-BY-4.0
+ license-url: 'https://creativecommons.org/licenses/by/4.0/'
+ copyright: '© 2025 TeachBooks'
+ version: v1.2.1
+ date-released: '2025-03-28'
+ languages:
+ - en
+ contact:
+ - email: info@teachbooks.io
+ name: 'TeachBooks Development Team'
diff --git a/CODEOWNERS b/CODEOWNERS
new file mode 100644
index 0000000..e5d7b22
--- /dev/null
+++ b/CODEOWNERS
@@ -0,0 +1,2 @@
+# All files in the repo
+* @Tom-van-Woudenberg
diff --git a/Dockerfile b/Dockerfile
deleted file mode 100644
index 3e837c6..0000000
--- a/Dockerfile
+++ /dev/null
@@ -1,8 +0,0 @@
-FROM continuumio/miniconda3
-WORKDIR /book
-COPY book/ .
-RUN apt-get update && apt-get -y install git gcc
-COPY requirements.txt requirements.txt
-RUN pip install -r requirements.txt
-RUN jupyter book build .
-ENTRYPOINT [ "python", "-m", "http.server", "8000", "--directory", "/book/_build/html" ]
\ No newline at end of file
diff --git a/LICENSE b/LICENSE
index 4ea99c2..f14b8e1 100644
--- a/LICENSE
+++ b/LICENSE
@@ -1,6 +1,6 @@
-Attribution 4.0 International
+The license of this manual itself is CC BY 4.0. The same license is used for [](external/Nested-Books) and [](external/template). The license of other included materials are provided below.:
-=======================================================================
+Attribution 4.0 International
Creative Commons Corporation ("Creative Commons") is not a law firm and
does not provide legal services or legal advice. Distribution of
@@ -52,8 +52,6 @@ exhaustive, and do not form part of our licenses.
for the public:
wiki.creativecommons.org/Considerations_for_licensees
-=======================================================================
-
Creative Commons Attribution 4.0 International Public License
By exercising the Licensed Rights (defined below), You accept and agree
@@ -373,8 +371,6 @@ Section 8 -- Interpretation.
processes of any jurisdiction or authority.
-=======================================================================
-
Creative Commons is not a party to its public
licenses. Notwithstanding, Creative Commons may elect to apply one of
its public licenses to material it publishes and in those instances
@@ -393,3 +389,62 @@ the avoidance of doubt, this paragraph does not form part of the
public licenses.
Creative Commons may be contacted at creativecommons.org.
+
+=======================================================================
+
+[](external/annotater), [](external/deploy-book-workflow), [](external/Download-Link-Replacer), [](external/JupyterBook-Patches), [](external/Sphinx-Image-Inverter), [](external/Sphinx-launch-buttons) and [](external/Useful_python_code) are licensed under BSD 3-Clause license:
+
+BSD 3-Clause License
+
+Copyright (c) 2024, TeachBooks
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are met:
+
+1. Redistributions of source code must retain the above copyright notice, this
+ list of conditions and the following disclaimer.
+
+2. Redistributions in binary form must reproduce the above copyright notice,
+ this list of conditions and the following disclaimer in the documentation
+ and/or other materials provided with the distribution.
+
+3. Neither the name of the copyright holder nor the names of its
+ contributors may be used to endorse or promote products derived from
+ this software without specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
+FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
+SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+=======================================================================
+
+[](external/Sphinx-Grasple-public), [](external/Sphinx-TUDelft-theme) and [](external/teachbooks-sphinx-tippy) are licensed under MIT license:
+
+MIT License
+
+Copyright (c) 2024, TeachBooks
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
diff --git a/README.md b/README.md
index db835c9..f70233d 100644
--- a/README.md
+++ b/README.md
@@ -1,19 +1,23 @@
# TeachBooks Manual
-This manual assists you in creating and collaborating on [JupyterBooks](https://jupyterbook.org/) for educational purposes. Some parts are specifically aimed for teachers at Delft University of Technology, although all material and tools are openly available. This manual aims at providing an easy start and advanced usages for new and existing users with or without skills on this topic. it is part of TeachBooks, for more information visit [https://teachbooks.tudelft.nl/](https://teachbooks.tudelft.nl/).
+[](https://doi.org/10.5281/zenodo.15100848)
+[](https://github.com/TeachBooks/manual/actions/workflows/call-deploy-book.yml)
+
+This manual assists you in creating and collaborating on TeachBooks: [JupyterBooks v1](https://jupyterbook.org/v1/) for educational purposes. Some parts are specifically aimed for teachers at Delft University of Technology, although all material and tools are openly available. This manual aims at providing an easy start and advanced usages for new and existing users with or without skills on this topic. it is part of TeachBooks, for more information visit [https://teachbooks.io/](https://teachbooks.io/).
## Contact
-If you encounter any issues and you have a TU Delft account, report it by clicking --> {fa}`lightbulb` on the top right corner of this page. Or contribute directly by creating a merge request in the [repository](https://gitlab.tudelft.nl/interactivetextbooks-citg/jupyter-book-manual).
+If you encounter any issues and you have a TU Delft account, report it by clicking the github icon and lightbulb on the top right corner of this page. Or contribute directly by creating a merge request in the [repository](https://github.com/Teachbooks/manual).
-If you have questions, contact Tom van Woudenberg, Robert Lanzafame or our TA Julie Kirsch at TeachBooks@tudelft.nl, also for non-TU Delft account holders. TU Delft account holder can also contact us in the [MS Teams Open Interactive Textbooks Community](https://teams.microsoft.com/l/team/19%3Ah9-uRcP_yYauh-VuoPFozJVUvHVOB4a0mz1ZWvh4q4Q1%40thread.tacv2/conversations?groupId=3e88c1f3-4a4f-483a-a366-7e617de9ba99&tenantId=096e524d-6929-4030-8cd3-8ab42de0887b)
+If you have questions, contact the TeachBooks Development Team at info@teackbooks.io, also for non-TU Delft account holders. You can also contact us in our [GitHub discussions](https://github.com/orgs/TeachBooks/discussions)
-We really value your feedback on this manual. This helps us improving it. Please keep using the manual as you build your own Jupyter Book and come back to fill out this short [survey](https://forms.gle/hXbFUQgN95H8ftxt9).
+We really value your feedback on this manual. This helps us improving it. Please keep using the manual as you build your own TeachBooks and come back to fill out this short [survey](https://forms.gle/hXbFUQgN95H8ftxt9).
## Contribute
-This book will continue to develop, so feel free to contribute https://gitlab.tudelft.nl/interactivetextbooks-citg/jupyter-book-manual! You can do so directly by forking this repository and creating a merge request.
+This book will continue to develop, so feel free to contribute https://github.com/TeachBooks/manual! You can do so directly by forking this repository and creating a merge request.
-The released book can be found on on https://teachbooks.tudelft.nl/jupyter-book-manual. This page shows the built book of the `release` branch. The `main` branch is meant for reviewing and is visible here: https://teachbooks.tudelft.nl/jupyter-book-manual/draft. All branches will also be visible on the mirrored repository on GitHub Pages: https://github.com/TeachBooks/mirror_teachbook_manual/actions
+The released book can be found on on https://teachbooks.io/manual. This page shows the built book of the `release` branch All branches will also be visible as seen in the action's summaries: https://github.com/TeachBooks/mirror_teachbook_manual/actions
-Some parts of this book are taken from other sources in the form of submodules (linked in the folder [book/external](book/external)). To contribute to those pages, contribute to the source repository directly with a fork and merge/pull request. If you intent to clone this boko including its submodules, clone using: `git clone --recurse-submodules git@gitlab.tudelft.nl:interactivetextbooks-citg/jupyter-book-manual.git`
+Some parts of this book are taken from other sources in the form of submodules (linked in the folder [book/external](book/external)). To contribute to those pages, contribute to the source repository directly with a fork and merge/pull request. If you intent to clone this book including its submodules, clone using: `git clone --recurse-submodules git@github.com:TeachBooks/manual.git`
+
+Happy book building!
-Happy book building!
\ No newline at end of file
diff --git a/WAIVER b/WAIVER
new file mode 100644
index 0000000..9979091
--- /dev/null
+++ b/WAIVER
@@ -0,0 +1,4 @@
+Technische Universiteit Delft hereby disclaims all copyright interest in the
+program “TeachBooks Manual” (a book serving as documentation for various tooling
+surrounding TeachBooks) written by the Author(s).
+Stefan Aarninkhof, Dean of Civil Engineering & Geosciences
diff --git a/book/_config.yml b/book/_config.yml
index cd02f57..7df42ac 100644
--- a/book/_config.yml
+++ b/book/_config.yml
@@ -1,38 +1,62 @@
title: TeachBooks Manual
-author: TeachBooks Team from Delft University of Technology, built with TeachBooks and Jupyter Book, CC BY 4.0
-
-logo: images/Logo_without_background.png
+author: TeachBooks Development Team and TeachBooks users, built with TeachBooks, CC BY 4.0
execute:
- execute_notebooks: 'off'
+ execute_notebooks: 'auto'
only_build_toc_files: true
html:
favicon : "images/favicon.ico"
- baseurl : "https://teachbooks.tudelft.nl/jupyter-book-manual/"
-# START REMOVE-FROM-PUBLISH
- comments:
- hypothesis: true
-# END REMOVE-FROM-PUBLISH
+ baseurl : "https://teachbooks.io/manual/"
sphinx:
extra_extensions:
- sphinx_inline_tabs
- sphinx.ext.imgconverter
- - download_link_replacer
- - jupyterbook_patches
+ - teachbooks_favourites
+ - teachbooks_sphinx_grasple
+ - sphinx_apa_references
config:
+ language: en
html_js_files:
- https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.4/require.min.js
thebe_config:
use_thebe_lite: true
exclude_patterns: ["**/_*.yml", "**/*.md", "**/*.ipynb","**/*.gif","**/*.txt","**/*.json",]
html_theme_options:
- repository_url: "https://gitlab.tudelft.nl/interactivetextbooks-citg/jupyter-book-manual"
+ logo:
+ text: Manual
+ image_light: TeachBooks_logo.svg
+ image_dark: TeachBooks_logo_inverted.svg
+ repository_url: "https://github.com/TeachBooks/manual/"
+ path_to_docs: "book"
+ repository_branch: "release"
use_repository_button: true
+ use_edit_page_button: true
use_issues_button : true
launch_buttons:
thebe: true
html_show_copyright: false
html_last_updated_fmt: '%B %-d, %Y'
+ html_static_path: ["images"]
+ mathjax3_config:
+ tex:
+ macros:
+ "newcolor": ['\definecolor{newcolor}{RGB}{111, 29, 119}{\color{newcolor}#1}',1]
+ named_colors_custom_colors: {'onlylight':[165,21,160],'lightanddark':[45,180,117,204,158,110],'hyphen-color':[45,180,117,165,21,160],'attributiongrey':[150,150,150]}
+ metadata_figure_settings:
+ style:
+ placement: hide
+ license:
+ summaries: false
+ individual: false
+ nb_execution_includepatterns: "**/MANUAL.ipynb"
+ git_show_all_authors: true
+
+teachbooks:
+ attribution_location: margin
+ attribution_color: attributiongrey
+
+bibtex_bibfiles:
+ - references.bib
diff --git a/book/_static/attribution.css b/book/_static/attribution.css
new file mode 100644
index 0000000..3c23cc3
--- /dev/null
+++ b/book/_static/attribution.css
@@ -0,0 +1,4 @@
+/* Attribution */
+div.attribution > .admonition-title::after {
+ content: "\f10d";
+}
\ No newline at end of file
diff --git a/book/_static/color.css b/book/_static/color.css
new file mode 100644
index 0000000..8717fb4
--- /dev/null
+++ b/book/_static/color.css
@@ -0,0 +1,19 @@
+:root {
+ --newcolor-light: rgb(111, 29, 119);
+ --newcolor-dark: rgb(255, 167, 255);
+ --newcolor: var(--newcolor-light);
+}
+
+html[data-theme="dark"] {
+ --newcolor: var(--newcolor-dark);
+}
+
+.newcolor {color: var(--newcolor);}
+
+.newcolor-same {color: var(--newcolor-light);}
+
+.newcolor-filter {color: var(--newcolor-light);}
+
+html[data-theme="dark"] .newcolor-filter {
+ filter: invert(1) hue-rotate(180deg) saturate(1.5);
+}
\ No newline at end of file
diff --git a/book/_static/figuurWidget.js b/book/_static/figuurWidget.js
index e5801fd..64f9faa 100644
--- a/book/_static/figuurWidget.js
+++ b/book/_static/figuurWidget.js
@@ -255,7 +255,7 @@ const createFigureReference = (path, name, caption) => {
+ "{numref}`{number} <" + name + ">`";
}
-//Via https://jupyterbook.org/en/stable/content/references.html#reference-tables
+//Via https://jupyterbook.org/v1/content/references.html#reference-tables
const createTableReference = (caption, name) => {
return " tabel code:
"
+"```{table} " + caption + "
"
diff --git a/book/_static/power.html b/book/_static/power.html
new file mode 100644
index 0000000..69524a9
--- /dev/null
+++ b/book/_static/power.html
@@ -0,0 +1,178 @@
+
+
+
+ CO2 vs Power
+
+
+
+
+
+
+
+
+
+
+
diff --git a/book/_static/remove_author.css b/book/_static/remove_author.css
new file mode 100644
index 0000000..a99acdb
--- /dev/null
+++ b/book/_static/remove_author.css
@@ -0,0 +1,4 @@
+/* Hide the default Jupyter Book author footer */
+.component-author {
+ display: none;
+}
diff --git a/book/_toc.yml b/book/_toc.yml
index 85cba5c..6122b8d 100644
--- a/book/_toc.yml
+++ b/book/_toc.yml
@@ -2,10 +2,18 @@ format: jb-book
root: intro
parts:
- - caption: Getting started!
+ - caption: Your First TeachBook!
+ chapters:
+ - file: intro/book.md
+ - file: intro/workflow.md
+ - file: intro/template.md
+ - file: intro/next.md
+ - caption: Getting Going!
chapters:
- file: installation-and-setup/user_types.md
- file: installation-and-setup/git.md
+ sections:
+ - file: installation-and-setup/tools
- file: installation-and-setup/overview.md
sections:
- file: installation-and-setup/vscode-setup.md
@@ -13,7 +21,6 @@ parts:
- file: installation-and-setup/anaconda.md
- file: installation-and-setup/git_bash_conda_vs-code.md
- file: installation-and-setup/jupyter-book-setup.md
- - file: external/template/README.md
- file: workflows/collaboration.md
sections:
- file: workflows/milestones_issues.md
@@ -22,11 +29,87 @@ parts:
- file: workflows/check_changes_online.md
- file: workflows/merge_request.md
- file: installation-and-setup/collab
- - file: installation-and-setup/tools
- - file: installation-and-setup/creating_content.md
+ - file: installation-and-setup/versioning
+ sections:
+ - file: installation-and-setup/versions_URLs
+ - file: installation-and-setup/versioning_changelog
+ - file: installation-and-setup/publisher
+ - file: installation-and-setup/copyright.md
+ sections:
+ - file: installation-and-setup/copyright/considerations
+ - file: installation-and-setup/copyright/licenses
+ - file: installation-and-setup/copyright/recommendations
- caption: Features
chapters:
- - file: basic-features/overview
+ - file: features/overview.md
+ sections:
+ - file: features/teachbooks_intro.md
+ - file: external/deploy-book-workflow/README.md
+ - file: features/favourites.md
+ - file: external/template/README.md
+ - file: features/easy-editing.md
+ sections:
+ - file: features/write_online.md
+ - file: features/release_book_online.md
+ - file: features/draft-release
+ - file: features/pull_request_build.md
+ - file: features/local_server
+ - file: features/external_toc
+ sections:
+ - file: external/Nested-Books/README.md
+ title: (Deprecated) Share content between books using submodules
+ - file: features/update_env
+ - file: features/versioning
+ - file: features/sphinx_extensions.md
+ sections:
+ - file: external/Download-Link-Replacer/README.md
+ - file: external/Sphinx-launch-buttons/README.md
+ - file: basic-features/utterances.md
+ - file: features/h5p.md
+ sections:
+ - file: examples/h5p_examples.md
+ - file: features/plotly.ipynb
+ - file: external/Sphinx-Grasple-public/README.md
+ - file: features/HTML_javascript.md
+ sections:
+ - file: features/adding_HTML_elements.md
+ - file: features/creating_basic_HTML_elements.md
+ - file: features/live_code
+ sections:
+ - file: features/widgets.ipynb
+ - file: features/exercise_checking.ipynb
+ - file: features/jupyterquiz.ipynb
+ - file: external/sphinx-iframes/README.md
+ - external: https://github.com/TeachBooks/Sphinx-Indexed-Definitions/blob/manual/README.md
+ - file: external/Sphinx-PRIME-applets/README.md
+ - external: "https://github.com/TeachBooks/sphinx-code-examples/blob/main/MANUAL.ipynb"
+ - file: features/sphinx-proof.md
+ - external: "https://github.com/TeachBooks/Sphinx-NB-Execution-Patterns/blob/Manual/README.md"
+ - file: features/exercise.md
+ - external: https://github.com/TeachBooks/Sphinx-ref-graph/blob/manual/README.md
+ - external: https://github.com/TeachBooks/Sphinx-GitHub-Alerts/blob/main/README.md
+ - external: https://github.com/TeachBooks/Sphinx-Metadata-Figure/blob/main/MANUAL.ipynb
+ - external: https://github.com/TeachBooks/Sphinx-Gated-Directives/blob/main/MANUAL.md
+ - external: https://github.com/TeachBooks/TeachBooks-Questions/blob/main/MANUAL.md
+ - external: https://github.com/TeachBooks/TeachBooks-Fetch/blob/main/MANUAL.md
+ - file: features/visuals.md
+ sections:
+ - external: https://github.com/TeachBooks/Sphinx-Accessibility/blob/manual/README.md
+ - file: external/Sphinx-Image-Inverter/README.md
+ - file: external/JupyterBook-Patches/README.md
+ - file: external/Sphinx-TUDelft-theme/README.md
+ - file: external/teachbooks-sphinx-tippy/README.md
+ - file: features/apa
+ - file: external/Sphinx-Named-Colors/README.md
+ - external: https://github.com/TeachBooks/Sphinx-Dropdown-Toggle/blob/main/MANUAL.md
+ - external: https://github.com/TeachBooks/Sphinx-Sticky-Margin/blob/main/MANUAL.md
+ - file: features/students
+ sections:
+ - file: external/annotater/README.md
+ - file: basic-features/hypothesis.md
+ - caption: Original Jupyter Book v1 and Sphinx Features
+ chapters:
+ - file: basic-features/overview.md
sections:
- file: basic-features/jupyterbook.md
- file: basic-features/figures.md
@@ -35,50 +118,35 @@ parts:
- file: basic-features/References.md
- file: basic-features/code.md
- file: basic-features/Code_block_figures
+ - file: basic-features/badges.md
- file: basic-features/banner
title: Banner or Announcement
- - file: basic-features/hypothesis.md
- - file: basic-features/utterances.md
- - file: features/overview.md
- sections:
- - file: external/TeachBooks/README.md
- - file: external/deploy-book-workflow/README.md
- - file: external/Nested-Books/README.md
- - file: external/Download-Link-Replacer/README.md
- - file: external/Sphinx-Image-Inverter/README.md
- - file: external/JupyterBook-Patches/README.md
- - file: features/interactive_element.ipynb
- sections:
- - file: features/grasple.md
- - file: features/h5p.md
- - file: features/HTML_javascript.md
- sections:
- - file: features/adding_HTML_elements.md
- - file: features/creating_basic_HTML_elements.md
- - file: features/live_code
- sections:
- - file: features/widgets.ipynb
- - file: features/exercise_checking.ipynb
-
- caption: Examples
chapters:
- file: examples/overview.md
- - file: examples/book_structure.md
- - file: examples/h5p_examples.md
- - file: examples/live_code.md
- - file: examples/example_gumbel.ipynb
- - file: examples/theory_questions.md
- - file: examples/example_quiz_interactive.ipynb
- - file: examples/coding_theory_widgets.ipynb
- - file: examples/parametric_questions.ipynb
+ sections:
+ - file: examples/book_structure.md
+ - file: examples/live_code.md
+ - file: examples/example_gumbel.ipynb
+ - file: examples/theory_questions.md
+ - file: examples/example_quiz_interactive.ipynb
+ - file: examples/coding_theory_widgets.ipynb
+ - file: examples/parametric_questions.ipynb
- - caption: Editing tools
+ - caption: Editing Tools
chapters:
- file: tools/figmaker
- file: helper_code/intro.md
sections:
- - file: external/latex-to-markdown-conversion/README.md
+ - file: helper_code/converter.md
+ - file: helper_code/move_images.md
- file: external/Useful_python_code/snippit.ipynb
- file: external/Useful_python_code/extensionfildownloadreturn.ipynb
- file: external/Useful_python_code/figshrinker.ipynb
-
\ No newline at end of file
+
+ - caption: Miscellaneous
+ chapters:
+ - file: references.md
+ - file: credits
+ - file: changelog
+ - file: contact
diff --git a/book/basic-features/badges.md b/book/basic-features/badges.md
new file mode 100644
index 0000000..41cf07a
--- /dev/null
+++ b/book/basic-features/badges.md
@@ -0,0 +1,178 @@
+# Badges, Buttons & Icons
+
+
provides a range of features which are visually appealing and functional. These elements can enhance the interactivity and visual design of your book, offering additional information or links in a compact and visually engaging way. The badges, buttons and icons are made available through Sphinx and they themselves wrote a [documentation](https://sphinx-design.readthedocs.io/en/latest/badges_buttons.html) about it.
+
+(my_ref)=
+## Badges
+
+Badges are small visual indicators often used to convey concise or important information. They can be very useful for categorising or tagging content for the reader like has been done for the subchapters under the [features](../features/overview.md) chapter of this manual.
+
+There are three types of badges: plain, link and reference (for cross references within book) which are fully customizable and can simply be added with Markdown syntax:
+
+| Type | Badge | Code Syntax |
+|--------|----------------------------------------------------------|------------------------------------------------------------------------|
+| Plain | {bdg-primary}`plain_text` | ``` {bdg-primary}`plain_text` ```
+| Link | {bdg-link-primary}`https://teachbooks.io/` | ``` {bdg-link-primary}`https://teachbooks.io/` ``` |
+| Hidden Link | {bdg-link-primary}`TeachBooks ` | ``` {bdg-link-primary}`TeachBooks ` ``` |
+| Reference | {bdg-ref-primary}`my_ref` | ``` {bdg-ref-primary}`my_ref` ``` |
+
+Here's an overview of all the available colours:
+
+| Full Colour | Code Syntax | Colour Outline | Code Syntax |
+|-------------------------------|----------------------------------|-------------------------------|---------------------------------------|
+| {bdg}`my_text` | ``` {bdg}`my_text` ``` | | |
+| {bdg-primary}`my_text` | ``` {bdg-primary}`my_text` ``` | {bdg-primary-line}`my_text` | ``` {bdg-primary-line}`my_text` ``` |
+| {bdg-secondary}`my_text` | ``` {bdg-secondary}`my_text` ``` | {bdg-secondary-line}`my_text` | ``` {bdg-secondary-line}`my_text` ``` |
+| {bdg-success}`my_text` | ``` {bdg-success}`my_text` ``` | {bdg-success-line}`my_text` | ``` {bdg-success-line}`my_text` ``` |
+| {bdg-info}`my_text` | ``` {bdg-info}`my_text` ``` | {bdg-info-line}`my_text` | ``` {bdg-info-line}`my_text` ``` |
+| {bdg-warning}`my_text` | ``` {bdg-warning}`my_text` ``` | {bdg-warning-line}`my_text` | ``` {bdg-warning-line}`my_text` ``` |
+| {bdg-danger}`my_text` | ``` {bdg-danger}`my_text` ``` | {bdg-danger-line}`my_text` | ``` {bdg-danger-line}`my_text` ``` |
+| {bdg-light}`my_text` | ``` {bdg-light}`my_text` ``` | {bdg-light-line}`my_text` | ``` {bdg-light-line}`my_text` ``` |
+| {bdg-muted}`my_text` | ``` {bdg-muted}`my_text` ``` | {bdg-muted-line}`my_text` | ``` {bdg-muted-line}`my_text` ``` |
+| {bdg-dark}`my_text` | ``` {bdg-dark}`my_text` ``` | {bdg-dark-line}`my_text` | ``` {bdg-dark-line}`my_text` ``` |
+| {bdg-white}`my_text` | ``` {bdg-white}`my_text` ``` | {bdg-white-line}`my_text` | ``` {bdg-white-line}`my_text` ``` |
+| {bdg-black}`my_text` | ``` {bdg-black}`my_text` ``` | {bdg-black-line}`my_text` | ``` {bdg-black-line}`my_text` ``` |
+
+
+## Buttons
+
+Buttons provide a way to create clickable elements that are more attractive than links, for example, to link to key sections of your book such as downloads or external resources. Jupyter-Book v1 supports buttons using Markdown making them highly customizable. It is possible to link to external websites as well as chapters within your book. To link to an external page, use `{button-link}`. `{button-ref}` must be used when linking to a part within your book.
+
+The basic code syntax for creating a button is as follows:
+
+```{button-link} https://teachbooks.io
+:color: primary
+```
+
+```
+ ```{button-link} https://teachbooks.io
+ :color: primary
+ ```
+```
+[](../features/overview.md)
+```{button-ref} feature_overview
+:color: secondary
+```
+
+```
+ ```{button-ref} feature_overview
+ :color: secondary
+ ```
+```
+
+Buttons can be customized in markdown in a similar way as figures. You can experiment with these styles to create buttons that align with your book's theme. Here are the set of parameters which can be customized:
+
+
+| Parameter | Options | Functionality |
+|-------------------------------|----------------------------------|-------------------------------|
+| color | primary, secondary, success, danger, warning, info, light, dark, muted | Set the color of the button (background and font)|
+| outline | / | white button, coloured outline|
+| align | left, right, center | Align the button on the page |
+| expand | / | Expand to fit parent width |
+| click-parent | / | Make parent container also clickable |
+| tooltip | / | Add tooltip on hover |
+| shadow | / | Add shadow CSS |
+| class | / | Additional CSS classes |
+
+
+Finally here are some examples:
+
+```{button-link} https://teachbooks.io
+:color: warning
+:shadow:
+
+TeachBooks
+```
+
+```
+ ```{button-link} https://teachbooks.io
+ :color: warning
+ :shadow:
+
+ TeachBooks
+ ```
+
+```
+
+```{button-link} https://teachbooks.io
+:color: success
+:expand:
+
+TeachBooks
+```
+
+```
+ ```{button-link} https://teachbooks.io
+ :color: success
+ :expand:
+
+ TeachBooks
+ ```
+```
+
+
+## Icons
+
+Icons can be included to visually represent actions or categories. They can take many shapes, such as an image or button inserted in-line within a text paragraph. Icons can be integrated using HTML syntax.
+
+To add an icon, use the following syntax:
+
+**1. Image Icons**
+
+Let's have a look at the first sentence of this chapter again:
provides a range of features which are visually appealing and functional.
+
+Here the Jupyter-book logo was inserted for a more professional look. It's including a link `href` and and image saved as `../images/logo-wide.svg`
+
+```
+
provides a range of features which are visually appealing and functional.
+```
+
+**2. SVG Icons**
+
+A library of SVG icons can be found in the [Bootstrap](https://icons.getbootstrap.com/#icons) library.
+
+By scrolling through the available icons in the library you can find just about any icon. Once selected, you need to copy the SVG of the icon to include it in the `path` in the HTML code. This paragraph includes a globe: