jacob.ogden/internal/: devkit-templates-1.3.1 metadata and description
The project-configuration templates devkit setup-project renders into every devkit-managed project
| description_content_type | text/markdown |
| metadata_version | 2.3 |
| requires_dist |
|
| requires_python | >=3.14 |
| File | Tox results | History |
|---|---|---|
devkit_templates-1.3.1-py3-none-any.whl
|
|
|
devkit_templates-1.3.1.tar.gz
|
|
devkit-templates
The project-configuration templates devkit setup-project renders into every
devkit-managed project: pyproject.toml, the VS Code files, .gitignore, .gitattributes,
.dockerignore, .env, the GitHub workflows, AGENTS.md, the Claude settings and
.mcp.json. The Dockerfile and compose templates ship in devkit-container, beside the
binary they describe. No code: a devkit_templates package whose only content is
templates/.
How a change reaches projects
A wheel on SFTPyPI, a dev dependency of every project; setup-project reads the
templates from the project's own environment, and uv.lock is the pin. Push freely;
release (poe release) when a change is meant to reach projects. Nothing else moves it.
The floor
[project].dependencies names aeth-devkit>=X: the oldest devkit whose template
language these files use. The placeholders, the # ! gate language (see aeth-devkit's
README, Template language), the compose service block, the AGENTS.md block and the
inventory of files and merge shapes are implemented by aeth-devkit's setup crate. A
content change needs nothing. A change that needs a new feature of that language is an
aeth-devkit change first (add the feature, release it), then a commit here that raises the
floor and uses it. Under setup-project's constraint (aeth-devkit==<the running devkit>) a project on an older devkit is held at the last release its devkit accepts, with
a warning; it never renders a template it cannot understand. poe lock (aeth-devkit 14.0.0
and later) moves the dev-group pin and leaves this floor alone; an older devkit's poe lock
would move it.
Editing
poe setup-project in this repository renders its own tree through
[tool.devkit].templates-dir (aeth-devkit 14.0.0 and later; the setting is added here
with that release). To render a checkout of this repository into another project, pass
--templates-dir <path to python/devkit_templates/templates> or set DEVKIT_TEMPLATES.
CI (ci/render.sh) renders the working tree through the declared floor devkit and the
newest devkit on the index into three scratch projects (pure Python, Rust, Docker) and
fails on a render error or a {word} left in any rendered file. A literal {word} in a
template is read as an unresolved placeholder by that scan; write it another way.