Skip to main content

Caxton

CI Codecov PyPI version Python versions License: MIT


Declarative Python library for describing and generating documents from application data. Users define the document structure and semantics, while renderers handle output formats and backend-specific details

Stable v1.0.0 will be released when we decide, that no longer want to freely change the public DSL

📚 Documentation
📑 Changelog

from caxton import render, sheet, spreadsheet, table, text, write

rows = [{"name": "Ada Lovelace"}, {"name": "Grace Hopper"}]

report = spreadsheet(
    sheet(
        "People",
        table(
            source=rows,
            columns=(text(source="name", title="Name"),),
        ),
    ),
)

result = render(report)

write(report, "people.xlsx")

More examples are available in the example projects

The project is licensed under the MIT

Installation

Install Caxton with pip:

pip install caxton

No additional setup is required

Works on Open-Source

If you find this project interesting, consider giving it a ⭐

Metadata

Release files for caxton 0.2.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 caxton 0.2.0
File Size Uploaded
caxton-0.2.0.tar.gz 149.8 kB Details

Built distribution (wheel)

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

Total release size: 310.9 kB

Release files / caxton-0.2.0.tar.gz

Download URL caxton-0.2.0.tar.gz
Size 149.8 kB
Tags Source
SHA-256 checksum
How to use checksums
f43daa47744fbf5eddf350a8ad8ee97e8d3bf716e2a8d77beaf0564ec9b9f5b4
BLAKE2b-256 checksum
How to use checksums
5794a35b69cfeedb30ed6366abb37545ea0f507636d62d9504e11dd58dbfa37e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Sep 1, 2026.

Transparency log

Release files / caxton-0.2.0-py3-none-any.whl

Download URL caxton-0.2.0-py3-none-any.whl
Size 161.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
43b6dcfda8f4a664a9886296fff10bc5f7791d852685690a3b525628e5374fd3
BLAKE2b-256 checksum
How to use checksums
fbcad5e2075c232122ee8625aff1a8510c993d2d3b17b51a4f72854e296d1290
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Sep 1, 2026.

Transparency log

Release history Release notifications | RSS feed

0.3.0

2 release files

0.2.5

2 release files

0.2.4

2 release files

0.2.3

2 release files

0.2.2

2 release files

0.2.1

2 release files

This release

0.2.0 This release

2 release files

0.1.4

2 release files

0.1.1

2 release files

0.1.0

2 release files

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