| # serve the site locally | |
| serve: prepare_files style_check | |
| venv/bin/mkdocs serve | |
| serve_dirty: prepare_files style_check | |
| venv/bin/mkdocs serve --dirtyreload | |
| build: prepare_files style_check | |
| venv/bin/mkdocs build | |
| # create files that are not versioned inside the mkdocs folder (images, examples) | |
| prepare_files: clean | |
| mkdir docs/examples | |
| cp -r ../json.gif docs/images | |
| cp -r ../examples/*.cpp ../examples/*.output docs/examples | |
| style_check: | |
| @cd docs ; python3 ../scripts/check_structure.py | |
| # clean subfolders | |
| clean: | |
| rm -fr docs/images/json.gif docs/examples | |
| # publish site to GitHub pages (not working in GitHub Actions; need special action) | |
| publish: prepare_files | |
| venv/bin/mkdocs gh-deploy --clean --force | |
| # install a Python virtual environment | |
| install_venv: requirements.txt | |
| python3 -mvenv venv | |
| venv/bin/pip install --upgrade pip | |
| venv/bin/pip install wheel | |
| venv/bin/pip install -r requirements.txt | |
| # uninstall the virtual environment | |
| uninstall_venv: clean | |
| rm -fr venv | |