Universal Python project scaffold — generate professional, CI-ready skeletons in seconds.
No cookiecutter, no Jinja2, no magic. Just a clean CLI that produces a fully working project — uv sync, pytest, ruff, pre-commit and CI all wired up from second one.
pip install diamond-setup
# or
uv tool install diamond-setup# New project with the minimal template (default)
diamond scaffold my-lib
# GenesisAeon preset (adds domains.yaml + entropy-table bridge)
diamond scaffold my-physics-tool --template genesis --author "Ada Lovelace"
# Preview what would be generated (no files written)
diamond scaffold my-lib --dry-run
# See all templates
diamond list-templates
# Validate any project directory
diamond validate path/to/my-project
diamond validate # validates the current directoryRunning diamond scaffold my-lib produces:
my-lib/
├── src/
│ └── my_lib/
│ └── __init__.py # __version__ = "0.1.0"
├── tests/
│ ├── __init__.py
│ └── test_main.py
├── .github/
│ └── workflows/
│ └── ci.yml # matrix: 3.11 + 3.12
├── pyproject.toml # hatchling, ruff, pytest configured
├── README.md
├── .gitignore
└── .pre-commit-config.yaml # ruff + standard hooks
Then just:
cd my-lib
uv sync --dev
pre-commit install
uv run pytest| Template | Description |
|---|---|
minimal |
Clean Python package for everyone |
genesis |
Adds domains.yaml + entropy-table bridge (GenesisAeon preset) |
Adding a new template is one Python file. See docs/templates.md.