https://github.com/zmeadows/tasklattice
Parameterized job generator for clusters
https://github.com/zmeadows/tasklattice
Last synced: 14 days ago
JSON representation
Parameterized job generator for clusters
- Host: GitHub
- URL: https://github.com/zmeadows/tasklattice
- Owner: zmeadows
- License: mit
- Created: 2025-08-03T18:49:21.000Z (8 months ago)
- Default Branch: master
- Last Pushed: 2025-10-01T22:19:27.000Z (6 months ago)
- Last Synced: 2025-10-01T23:33:06.678Z (6 months ago)
- Language: Python
- Homepage:
- Size: 265 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 19
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# TaskLattice

> ⚠️ **This project is under active development and not yet ready for public use.**
> The APIs, behavior, and structure may change significantly until a stable release.
TaskLattice generates many input variants from Python-defined parameters and renders templated files for each run. It launches jobs through simple runners (Local, Slurm) and keeps sweep logic separate from execution. Results are easy to iterate over, with lightweight output-file checks and optional caching/resume.
## Development
TaskLattice targets **Python 3.11 and 3.12**. Daily development is on **3.11**.
### Quick start (3.11)
```bash
# From repo root
python3.11 -m venv .venv
source .venv/bin/activate
python -m pip install --upgrade pip
pip install -e ".[dev]"
# Lint, type-check, test
ruff check .
mypy .
pytest
# install hooks (uses tools from the active venv)
pre-commit install
pre-commit install --hook-type pre-push
# commit-stage hooks: ruff + mypy
pre-commit run --all-files
# pre-push stage: pytest -q
pre-commit run --all-files --hook-stage pre-push
```