ProperDocs base repo for ICIQ-DMP project documentation.
Fork this repo to create PROJECT-docs for any ICIQ project.
- Fork this repo to
ICIQ-DMP/PROJECT-docs. - Enable GitHub Actions for the fork: open the new fork's Actions
tab in a browser and click "I understand my workflows, go ahead and
enable them." GitHub disables Actions on every fork by default, and
there's no error or failed run to notice if you skip this — the
docs.ymlworkflow just silently never triggers on push, and no API/CLI can do this step for you. Do this before anything else below; it's exactly what leftimarina-load-researchers-docsunpublished for months, because this step was missed. - In
properdocs.yml, update the PROJECT-SPECIFIC block at the top:site_name,site_url,repo_url,repo_nameextra.source_repo— the GitHub repo containing the source codeextra.project_name
- Edit
docs/index.mdwith the project description. - Enable GitHub Pages in the repo settings (source: GitHub Actions) —
or call
POST /repos/ICIQ-DMP/PROJECT-docs/pageswith{"build_type": "workflow"}, which does the same thing. - Push to
main/master— thedocs.ymlworkflow will build, lint and deploy.
Use GitHub's Sync fork button (or git merge upstream/master locally).
The only expected conflict is the PROJECT-SPECIFIC block at the top of properdocs.yml.
docs/
├── index.md # Home page
├── tutorials/ # Learning-oriented content (write by hand)
├── how-to/ # Task-oriented content (write by hand)
├── reference/ # Auto-generated from source docstrings
├── explanation/ # Understanding-oriented content (write by hand)
└── gen_ref_pages.py # mkdocs-gen-files script for reference generation
properdocs.yml
requirements.txt
.github/workflows/
└── docs.yml # Build, lint (markdownlint) + deploy to GitHub Pages
With Docker (recommended):
git clone https://github.com/iciq-dmp/PROJECT_NAME source
docker compose upOpen http://localhost:8000.
Without Docker:
pip install -r requirements.txt
git clone https://github.com/iciq-dmp/PROJECT_NAME source
properdocs servePlace custom Jinja2 templates in docs/overrides/ to extend or replace
Material for MkDocs partials. docs/overrides/main.html is included as a
starting point — it simply extends the base template.
Use fenced code blocks tagged mermaid:
```mermaid
graph LR
A --> B --> C
```To redirect a moved page, add entries to the redirects.redirect_maps block in
properdocs.yml:
plugins:
- redirects:
redirect_maps:
'old/page.md': 'new/page.md'