diff --git a/.github/workflows/call-deploy-book.yml b/.github/workflows/call-deploy-book.yml new file mode 100644 index 0000000..bec1772 --- /dev/null +++ b/.github/workflows/call-deploy-book.yml @@ -0,0 +1,24 @@ +name: call-deploy-book + +on: + push: + branches: + - '**' + # If your git repository has the Jupyter Book 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 + workflow_dispatch: + +jobs: + call-workflow: + uses: TeachBooks/deploy-book-workflow/.github/workflows/deploy-book.yml@main + secrets: inherit + permissions: + contents: read + pages: write + id-token: write + diff --git a/book/_config.yml b/book/_config.yml index 4322295..3c7269e 100644 --- a/book/_config.yml +++ b/book/_config.yml @@ -1,5 +1,5 @@ title: TeachBooks Manual -author: TeachBooks Team, built with Jupyter Book, CC BY 4.0 +author: TeachBooks Team from Delft university of Technology, built with TeachBooks and Jupyter Book, CC BY 4.0 logo: images/Logo_without_background.png diff --git a/book/examples/example_gumbel.ipynb b/book/examples/example_gumbel.ipynb index 9095c4c..e23cc7a 100644 --- a/book/examples/example_gumbel.ipynb +++ b/book/examples/example_gumbel.ipynb @@ -34,20 +34,6 @@ "To complete this assignment, you can use `numpy`, `matplotlib` and from the `math` library, `log` and `e` (these are imported for you when you inialize the notebook)." ] }, - { - "cell_type": "code", - "execution_count": null, - "metadata": { - "tags": [ - "thebe-remove-input-init" - ] - }, - "outputs": [], - "source": [ - "import micropip\n", - "await micropip.install(\"ipywidgets\")" - ] - }, { "cell_type": "code", "execution_count": 2, diff --git a/book/examples/grading.py b/book/examples/grading.py new file mode 100644 index 0000000..c282bf3 --- /dev/null +++ b/book/examples/grading.py @@ -0,0 +1,16 @@ +from IPython.display import display +import ipywidgets as widgets + +def check(f): + def wrapper(*args, **kwargs): + output = widgets.Output() + button = widgets.Button(description="Check Answer(s)") + @output.capture(clear_output=True,wait=True) + def _inner_check(button): + try: + f(*args, **kwargs) + except: + print("Something went wrong, have you filled all the functions and run the cells?") + button.on_click(_inner_check) + display(button, output) + return wrapper diff --git a/book/external/deploy-book-workflow b/book/external/deploy-book-workflow index 32e1eb8..d5eab25 160000 --- a/book/external/deploy-book-workflow +++ b/book/external/deploy-book-workflow @@ -1 +1 @@ -Subproject commit 32e1eb8725fe4c63612a13f7467491cc9765d95e +Subproject commit d5eab25a29e2cc558ec449577dab669c02758a11 diff --git a/book/external/template b/book/external/template index 1f74f5f..7165661 160000 --- a/book/external/template +++ b/book/external/template @@ -1 +1 @@ -Subproject commit 1f74f5f2cf71a282e29b9a96a61bb8a140b9c6ab +Subproject commit 71656612afa24342f345d9e113553b8ff3cdf4b1 diff --git a/book/features/live_code.ipynb b/book/features/live_code.ipynb index 0c356e7..1111605 100644 --- a/book/features/live_code.ipynb +++ b/book/features/live_code.ipynb @@ -85,7 +85,7 @@ "If you push to main, you can test the interactivity on the book-draft website as well.\n", "\n", "## Custom cell tags\n", - "With the extended functionality of live code, additional cell tags have been developed to be added to cells in any .ipynb file, next to the [existing tags] of the jupyter book (https://jupyterbook.org/en/stable/content/metadata.html):\n", + "With the extended functionality of live code, additional cell tags have been developed to be added to python cells (not markdown cells) in any .ipynb file, next to the [existing tags] of the jupyter book (https://jupyterbook.org/en/stable/content/metadata.html):\n", "- `disable-execution-cell` disables the ability to execute the cell when thebe is activated. This might be useful if you notebook file includes interactivity for only a part of the coding cells\n", "- `disable-execution-page` disables the ability to execute the entire page. This might be useful if you use python code for creating a page, but the code is not part of the actual content of the book.\n", "- `auto-execute-page` automatically starts the thebe live coding functionality whenever the page is opened. This is particularly useful if you're using widgets on a page.\n", diff --git a/book/intro.md b/book/intro.md index 1471cd6..17a384e 100644 --- a/book/intro.md +++ b/book/intro.md @@ -3,4 +3,5 @@ This is an introduction to Git, VS Code and Jupyter Books for teachers and teaching assistants involved in TeachBooks, our platform easing the process of making a Jupyter book. This book is still work in progress, so feel free to contribute https://gitlab.tudelft.nl/interactivetextbooks-citg/jupyter-book-manual! For more information about teachbooks, visit [https://teachbooks.tudelft.nl/](https://teachbooks.tudelft.nl/). ## Contact -If you encounter any issues, please contact Tom van Woudenberg, Robert Lanzafame or one of our TAs Julie Kirsch at TeachBooks@tudelft.nl. \ No newline at end of file +If you encounter any issues and you've a TU Delft account, report it by clicking --> {fa}`lightbulb` on the top right corner of this page. +Or contact Tom van Woudenberg, Robert Lanzafame or one of our TAs Julie Kirsch at TeachBooks@tudelft.nl, also for non-TU Delft account holders. \ No newline at end of file diff --git a/requirements.txt b/requirements.txt index 5c6680c..d42b694 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,4 +1,5 @@ jupyter-book +teachbooks sphinx-inline-tabs jupyterlite-sphinx