Skip to main content

Ingots

ci License Documentation Status

Statically typed composition of Python applications from reusable addons, customizable at any depth.

Ingots composes an application from reusable addons, in the spirit of Django's pluggable apps, but statically: an addon is customized at any depth by plain subclassing, one short class per level, and the composition is checked twice, by mypy and when the classes are created. The IDE sees the application's classes down to the deepest entity, combining addons wrongly fails at import time rather than in production, and every addon ships contract tests that the application runs against its own composition.

Status: alpha. The core is in place: projects, units, entities and typed slots, the command-line runner and the components, with the standard units for the settings and the logging. The API may still change between minor versions.

Development

Requires uv and make; uv fetches the interpreters it needs.

make                 # the target list
make check           # everything CI runs: lint, test, wheel-test, doc, cl-check
make format          # black
make doc             # the documentation into docs/build/ (runs `make apidoc` first)
make doc-serve       # build and serve it on port 8000 of every interface [DOC_HOST=127.0.0.1 DOC_PORT=...]
make all             # build the sdist and the wheel into dist/
  • make test runs the suite (stdlib unittest) on the working tree; make wheel-test runs it on the built wheel for every supported Python (PYTHONS="3.14 3.15").
  • Every change users should know about adds a news fragment to changelog.d/ (see its README); make cl-check fails a branch without one.

Metadata

Release files for ingots 0.30.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for ingots 0.30.0
File Size Uploaded Provenance
ingots-0.30.0.tar.gz 32.5 kB With provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for ingots 0.30.0
File Interpreter ABI Platform
ingots-0.30.0-py3-none-any.whl Python 3 none any Details

Total release size: 80.1 kB

Release files / ingots-0.30.0.tar.gz

Download URL ingots-0.30.0.tar.gz
Size 32.5 kB
Tags Source
SHA-256 checksum
How to use checksums
2644ef8367c39d4c0c617d3dda15f340c3b55d0bf480b0bd5c627bb4e7bdcd08
BLAKE2b-256 checksum
How to use checksums
26f3f3f168020add8625a04fecbee757f83e888040f0c8d8d382227c5a690c2a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 22, 2026.

Transparency log

Release files / ingots-0.30.0-py3-none-any.whl

Download URL ingots-0.30.0-py3-none-any.whl
Size 47.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
3bd198e84a53a2f93d1adfee9a2bd0cf9fad95cc90abc368ae2cc55969ee9ed0
BLAKE2b-256 checksum
How to use checksums
ed2e0b369ed32a1090a4b64904a270f8a4cbb02857843a366a3c3011edae7e96
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 22, 2026.

Transparency log

Security for ingots 0.30.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for ingots-0.30.0.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 22, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page