Pyodide-MkDocs-Theme is a MkDocs theme for building static websites that allow to run Python code in browser as:
- code editor snippets (IDEs),
- interactive Python consoles (terminals),
- instant assessments for user-written functions associated with solutions for excercises and instructor remarks.
There are many additional features including auto-corrected multiple choice questions (MCQs) and compatibility to use:
- p5.js animations,
- dynamic matplotlib drawings,
- PIL,
- dynamic mermaid graphs, and
- mathjax syntax.
Guarantees
- There are no cookies
- No registration needed
- Created by teachers for teachers and students
Quickstart
The following commands should install pyodide_mkdocs_theme, scaffold a new project and serve a sample website that you can open a browser, usually at http://127.0.0.1:8000/.
pip install pyodide_mkdocs_theme
python -m pyodide_mkdocs_theme --new your_project_name
cd your_project_name
pip install -r requirements.txt
mkdocs serve
Note: you will need to add site_url parameter in mkdocs.yml
in order to run mkdocs build command.
Links
- Online documentation (French only)
- GitLab repository
Flexibility
Pyodide-MkDocs-Theme is highly configurable on many aspects:
- theme configuration,
- add your own macros to the theme,
- add custom logic here or there,
- and quite a few other options.
How it works
The technology enabling this feat is called Pyodide. It is associated with JavaScript elements such as jquery.terminal and ACE Editor.
Pyodide uses WebAssembly to bridge between Python and JavaScript and provide an environment for manipulating the JavaScript DOM with Python, or vice versa for manipulating Python from JavaScript.
Pyodide-MkDocs-Theme is based on a modern mkdocs-material theme for MkDocs static site generator.
Project history
This project is a complete redesign of the prototype pyodide-mkdocs from Vincent Bouillot.
Metadata
Release files for pyodide-mkdocs-theme 5.7.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| pyodide_mkdocs_theme-5.7.0.tar.gz | 410.2 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| pyodide_mkdocs_theme-5.7.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 962.0 kB
Release files / pyodide_mkdocs_theme-5.7.0.tar.gz
| Download URL | pyodide_mkdocs_theme-5.7.0.tar.gz |
|---|---|
| Size | 410.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
226edf0cdd0a521fb9764775133cccfd01c43db37f1b7d7db96304042ff629df
|
|
BLAKE2b-256 checksum How to use checksums |
4595f86422531a46d6aaabdb31b17f35049212e666c968f64dbb1a36d635d261
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/2.1.4 CPython/3.10.10 Linux/7.0.0-38-generic
|
Release files / pyodide_mkdocs_theme-5.7.0-py3-none-any.whl
| Download URL | pyodide_mkdocs_theme-5.7.0-py3-none-any.whl |
|---|---|
| Size | 551.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
bb7ee689be50ece5e47d18c3d49cf5e83e010095c669dcea08cebd8d251d1546
|
|
BLAKE2b-256 checksum How to use checksums |
3634cbdeef239b5fe5c6a9ad27a025809df6114fd568ab94850db9730569ed24
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/2.1.4 CPython/3.10.10 Linux/7.0.0-38-generic
|
Security for pyodide-mkdocs-theme 5.7.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.