Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
26 changes: 26 additions & 0 deletions .github/workflows/mkdocs_build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
name: Build docs

on:
pull_request:
branches: main

# Allows manual run from the Actions tab
workflow_dispatch:

jobs:
build-docs:
runs-on: ubuntu-latest
steps:
- name: Checkout repo
uses: actions/checkout@v4
- name: Setup python
uses: actions/setup-python@v5
with:
python-version: "3.x"
- name: Install packages
run: |
python3 -m pip install --upgrade pip
python3 -m pip install .[docs]
- name: Build static files
run: |
mkdocs build
48 changes: 48 additions & 0 deletions .github/workflows/mkdocs_deploy.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
name: Build docs and deploy to GH Pages

on:
push:
branches:
- 'main'
paths:
- 'mkdocs.yml'
- 'docs/**'

# Allows manual run from the Actions tab
workflow_dispatch:

jobs:
build-docs:
runs-on: ubuntu-latest
steps:
- name: Checkout repo
uses: actions/checkout@v4
- name: Setup python
uses: actions/setup-python@v5
with:
python-version: "3.x"
- name: Install packages
run: |
python3 -m pip install --upgrade pip
python3 -m pip install .[docs]
- name: Build static files
run: |
mkdocs build -d site
- name: Upload static files as artifact
id: deployment
uses: actions/upload-pages-artifact@v3
with:
path: site/

deploy-docs:
runs-on: ubuntu-latest
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }} # Not used
permissions:
id-token: write
pages: write
needs: build-docs
steps:
- name: Deploy to GitHub Pages
uses: actions/deploy-pages@v4
5 changes: 5 additions & 0 deletions docs/bib.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
[emodpy]: https://docs.idmod.org/projects/emodpy/en/latest/index.html
[idmtools]: https://docs.idmod.org/projects/idmtools/en/latest/index.html
[emod-generic]: https://docs.idmod.org/projects/emod-generic/en/latest/parameter-overview.html
[idmod]: https://www.idmod.org/
[idm_pypi]: https://packages.idmod.org/
6 changes: 6 additions & 0 deletions docs/customization/css/extra.css
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
div.md-copyright__highlight
{
display: flex;
flex-direction: row;
gap: 2em;
}
19 changes: 19 additions & 0 deletions docs/customization/javascripts/mathjax.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
window.MathJax = {
tex: {
inlineMath: [["\\(", "\\)"]],
displayMath: [["\\[", "\\]"]],
processEscapes: true,
processEnvironments: true
},
options: {
ignoreHtmlClass: ".*|",
processHtmlClass: "arithmatex"
}
};

document$.subscribe(() => {
MathJax.startup.output.clearCache()
MathJax.typesetClear()
MathJax.texReset()
MathJax.typesetPromise()
})
19 changes: 19 additions & 0 deletions docs/customization/overrides/partials/copyright.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
{# base partial from:
github.com/squidfunk/mkdocs-material/material/templates/partials/copyright.html
#}
<div class="md-copyright">
{% if config.copyright %}
<div class="md-copyright__highlight">
{{ config.copyright }}
{% for link in config.extra.footer_links %}
<a href="{{ link.href }}" target="_blank" rel="noopener" style="TEXT-DECORATION: underline">{{ link.text }}</a>
{% endfor %}
</div>
{% endif %}
{% if not config.extra.generator == false %}
Made with
<a href="https://squidfunk.github.io/mkdocs-material/" target="_blank" rel="noopener">
Material for MkDocs
</a>
{% endif %}
</div>
Binary file added docs/images/EMOD_logo.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/images/IDM_white.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/images/favicon.ico
Binary file not shown.
Binary file added docs/images/idm-logo-transparent.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
11 changes: 11 additions & 0 deletions docs/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
---
title: Home
---

# Welcome to EMOD-Hub

Homepage for documentation.

{%
include-markdown "bib.md"
%}
100 changes: 100 additions & 0 deletions mkdocs.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,100 @@
site_name: EMOD-Hub Documentation
site_url: https://emod-hub.github.io/
repo_name: EMOD-Hub/emod-hub.github.io
repo_url: https://github.com/EMOD-Hub/emod-hub.github.io

theme:
name: material
custom_dir: docs/customization/overrides
font:
text: Roboto
code: Roboto Mono
logo: images/EMOD_logo.png
favicon: images/favicon.ico
features:
- navigation.footer
- content.code.copy
palette:
- scheme: default
toggle:
icon: material/weather-night
name: Light mode
primary: white
accent: light blue
- scheme: slate
toggle:
icon: material/weather-sunny
name: Dark mode
primary: black
accent: light blue

nav:
- Home: index.md
- Related Projects:
- emodpy: https://docs.idmod.org/projects/emodpy/
- EMOD-Generic: https://docs.idmod.org/projects/emod-generic
- idmtools: https://docs.idmod.org/projects/idmtools/

plugins:
- search:
- autorefs:
- include-markdown:
- glightbox:
- mkdocstrings:

markdown_extensions:
- def_list:
- pymdownx.caret:
- pymdownx.mark:
- pymdownx.tilde:
- pymdownx.snippets:
- pymdownx.blocks.details:
- pymdownx.highlight:
linenums: true
default_lang: 'python'

copyright: Copyright &copy; 2025 Gates Foundation. All rights reserved.

extra_javascript:
- customization/javascripts/mathjax.js
- https://unpkg.com/mathjax@3/es5/tex-mml-chtml.js

extra_css:
- customization/css/extra.css

extra:
generator: false # Removes acknowledgement of mkdocs-material
footer_links:
- text: "Privacy and Cookies Notice"
href: "https://www.gatesfoundation.org/Privacy-and-Cookies-Notice"
- text: "Terms of Use"
href: "https://www.gatesfoundation.org/Terms-of-Use"
social:
- icon: fontawesome/brands/github
link: https://github.com/EMOD-Hub/emod-api
- icon: fontawesome/regular/envelope
link: mailto:idm@gatesfoundation.org
- icon: octicons/globe-24
link: https://idmod.org
- icon: simple/youtube
link: http://www.youtube.com/@institutefordiseasemodelin1987
- icon: fontawesome/brands/linkedin
link: https://linkedin.com/company/institute-disease-modeling
- icon: fontawesome/brands/slack
link: https://gatesfoundation.enterprise.slack.com/
analytics:
feedback:
title: Was this page helpful?
ratings:
- icon: material/emoticon-happy-outline
name: This page was helpful
data: 1
note: >-
Thanks for your feedback! If you like, provide additional information by
using our <a href="https://app.smartsheet.com/b/form/ec8dbb77809949ecab7286a5ca74a206" target="_blank" rel="noopener">feedback form</a>.
- icon: material/emoticon-sad-outline
name: This page could be improved
data: 0
note: >-
Thanks for your feedback! Help us improve this page by
using our <a href="https://app.smartsheet.com/b/form/ec8dbb77809949ecab7286a5ca74a206" target="_blank" rel="noopener">feedback form</a>.
45 changes: 45 additions & 0 deletions pyproject.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
[build-system]
requires = ["setuptools", "wheel"]
build-backend = "setuptools.build_meta"

[project]
name = "emod-hub.github.io"
version = "0.1.0"
description = "Documentation home for EMOD-Hub"
readme = "README.md"
requires-python = ">=3.9"
authors = [
{name = "Sharon Chen", email = "sharon.chen@gatesfoundation.org"},
{name = "Zhaowei Du", email = "zhaowei.du@gatesfoundation.org"},
{name = "Clark Kirkman IV", email = "clark.kirkmand@gatesfoundation.org"},
{name = "Daniel Bridenbecker", email = "daniel.bridenbecker@gatesfoundation.org"},
{name = "Svetlana Titova", email = "svetlana.titova@gatesfoundation.org"},
{name = "Ye Chen", email = "ye.chen@gatesfoundation.org"},
]
keywords = ['modeling', 'IDM']
dependencies = [
]
license = "MIT"
classifiers = [
"Intended Audience :: Science/Research",
"Programming Language :: Python :: 3",
"Operating System :: OS Independent",
"Framework :: IDM-Tools :: models",
]

[project.optional-dependencies]
docs = [
"mkdocs-material",
"mkdocs-include-markdown-plugin",
"mkdocstrings-python",
"mkdocs-autoapi",
"mkdocs-glightbox",
]
test = [
]
packaging = [
]

[project.urls]
Repository="https://github.com/EMOD-Hub/emod-hub.github.io"
Issues="https://github.com/EMOD-Hub/emod-hub.github.io/issues"