Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
25 commits
Select commit Hold shift + click to select a range
2a944ad
Implement MVP fixes and workflow updates
shreyamukherji Apr 13, 2026
bc20f51
mvp fixes
shreyamukherji Apr 14, 2026
5b4127c
implemented fast follow items
shreyamukherji Apr 14, 2026
4129688
improved docs
shreyamukherji Apr 14, 2026
feffbb8
improved docs
shreyamukherji Apr 15, 2026
4123720
improved docs
shreyamukherji Apr 17, 2026
6911809
improved docs
shreyamukherji Apr 18, 2026
3f59f65
improved docs
shreyamukherji Apr 21, 2026
008be88
ci(docs): allow configure-pages & deploy to auto-enable Pages when pe…
shreyamukherji Apr 21, 2026
ac72efd
ci(docs): use PAGES_TOKEN for configure/deploy and remove invalid inputs
shreyamukherji Apr 21, 2026
379cd1d
ci(docs): trigger docs deploy (empty commit)
shreyamukherji Apr 21, 2026
acedd47
ci(docs): use GITHUB_TOKEN for configure/deploy-pages (Pages via GitH…
shreyamukherji May 2, 2026
3971730
ci(docs): deploy site to gh-pages branch (old deploy-from-branch flow)
shreyamukherji May 2, 2026
37e43e3
docs(sphinx): add Sphinx + MyST scaffold, RTD config, and GH Actions …
shreyamukherji May 2, 2026
902056b
docs(rtd): add .readthedocs.yaml at repo root
shreyamukherji May 4, 2026
0bf9da7
changed filename
shreyamukherji May 4, 2026
a5d5d63
docs(rtd): migrate from MkDocs to Sphinx+RTD; add docs extra
shreyamukherji May 6, 2026
3c39834
chore(docs): remove duplicate readthedocs.yaml; keep .readthedocs.yaml
shreyamukherji May 6, 2026
fff39fd
docs: add docs/_static to satisfy Sphinx html_static_path
shreyamukherji May 7, 2026
0cfe007
docs(conf): register csv pygments lexer (fallback to text)
shreyamukherji May 7, 2026
2282b6c
docs: make Sphinx workflow uv-native and build-only
shreyamukherji May 13, 2026
666df92
docs: finalize Sphinx config and lockfile for RTD
shreyamukherji May 13, 2026
7412a66
ci(docs): fix ruff import ordering and finalize publish workflow cleanup
shreyamukherji May 15, 2026
351a35f
rtd
shreyamukherji May 18, 2026
c8a625a
ci(docs): fix ruff I001 import formatting in docs/conf.py
AdishAssain May 26, 2026
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
29 changes: 29 additions & 0 deletions .github/workflows/docs-sphinx.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
name: Docs (Sphinx)

on:
push:
branches: [dev]
pull_request:
branches: [dev]
workflow_dispatch:

jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4

- name: Setup uv
uses: astral-sh/setup-uv@v5

- name: Setup Python
uses: actions/setup-python@v5
with:
python-version-file: .python-version

- name: Install docs dependencies
run: uv sync --extra docs --frozen

- name: Build Sphinx HTML
run: uv run --no-sync --frozen sphinx-build -b html docs docs/_build/html -W
14 changes: 12 additions & 2 deletions .github/workflows/publish.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,14 +3,19 @@ name: Publish to PyPI
on:
release:
types: [published]
workflow_dispatch: null
workflow_dispatch: {}


jobs:
publish:
runs-on: ubuntu-latest
permissions:
id-token: write
contents: read
packages: write

# Only publish on valid version tags
if: startsWith(github.ref, 'refs/tags/v') && contains(github.ref, '.')

environment:
name: pypi
Expand Down Expand Up @@ -42,5 +47,10 @@ jobs:
- name: Build
run: uv build

- name: Check build artifacts
run: uv run --no-sync --frozen twine check dist/*

- name: Publish
uses: pypa/gh-action-pypi-publish@release/v1
uses: pypa/gh-action-pypi-publish@v1
with:
password: ${{ secrets.PYPI_API_TOKEN }}
17 changes: 17 additions & 0 deletions .readthedocs.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@

version: 2

build:
os: ubuntu-24.04
tools:
python: "3.12"
jobs:
create_environment:
- asdf plugin add uv
- asdf install uv latest
- asdf global uv latest
install:
- uv sync --extra docs --frozen
build:
html:
- uv run sphinx-build -b html docs $READTHEDOCS_OUTPUT/html
20 changes: 20 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
# Changelog

All notable changes to this project will be documented in this file.

## 0.1.0b1 - 2026-04-08

### Added
- Config-relative path resolution for `PatchFile`, `SeedFile`, `NetworkFile`, and `OutputDir`.
- Built-in YAML model templates for `sir`, `seir`, and `sirs` under package templates.
- `list-models` now reports both Python reference models and YAML templates.

### Changed
- Validation now checks transition source/target compartments explicitly.
- Validation now checks transition expression identifiers against `compartments ∪ Parameters`.
- Compartment source-of-truth reconciled: when `compartments` is provided in config, it must match `SeedFile` columns.
- Package metadata updated to `Development Status :: 4 - Beta`.
- Runtime dependencies now include conservative minimum version floors.

### Removed
- Removed unused `patchsim.utils.loader` module and its documentation reference.
17 changes: 16 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -101,14 +101,29 @@ uv run patchsim --version
# Initialize a new self-contained project
uv run patchsim init my-project

# Initialize with a starter template
uv run patchsim init my-project --template seir

# Validate config without running
uv run patchsim validate -c my-project/config.yaml

# Print the JSON Schema for configs
uv run patchsim validate --schema

# Emit machine-readable JSON output
uv run patchsim validate -c my-project/config.yaml --json

# Run simulation
uv run patchsim run -c my-project/config.yaml

# List built-in models
# Run and emit machine-readable JSON output
uv run patchsim run -c my-project/config.yaml --json

# List built-in model references and YAML templates
uv run patchsim list-models

# List models as JSON
uv run patchsim list-models --json
```

### Python SDK
Expand Down
Empty file added docs/_static/.gitkeep
Empty file.
Loading
Loading