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.2

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.2
File Size Uploaded
caxton-0.2.2.tar.gz 152.7 kB Details

Built distribution (wheel)

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

Total release size: 316.1 kB

Release files / caxton-0.2.2.tar.gz

Download URL caxton-0.2.2.tar.gz
Size 152.7 kB
Tags Source
SHA-256 checksum
How to use checksums
bb71f15c84d1cee2b4b3889b55281bf37ba81909ec92556fbf68a764fcab2806
BLAKE2b-256 checksum
How to use checksums
7eaa1eb1a91b52f540784edb51d1a255dbd30e028e7d47436afb255b875a1843
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 2, 2026.

Transparency log

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

Download URL caxton-0.2.2-py3-none-any.whl
Size 163.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
c0225356d4df0926e764a3c916cbf49d5829d0091444815a4ae3bf617b085245
BLAKE2b-256 checksum
How to use checksums
d7269056aee3028ab6f34008658479666d9916138007ab4dfc503f7d7c6fc951
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 2, 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

This release

0.2.2 This release

2 release files

0.2.1

2 release files

0.2.0

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