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

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.5
File Size Uploaded
caxton-0.2.5.tar.gz 181.9 kB Details

Built distribution (wheel)

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

Total release size: 357.7 kB

Release files / caxton-0.2.5.tar.gz

Download URL caxton-0.2.5.tar.gz
Size 181.9 kB
Tags Source
SHA-256 checksum
How to use checksums
b0bff38cfae6cd027d6f845551b4c000cf11d194716248ec550d2960b2eb4550
BLAKE2b-256 checksum
How to use checksums
527bc3fb3f5763a0eecad694fb520db610c55237a8fd943df86b475a8d35efc2
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 10, 2026.

Transparency log

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

Download URL caxton-0.2.5-py3-none-any.whl
Size 175.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
e57ff1a09c1254e4f487bd9608e8c0d4150170447ccb6f7e011c9fb5b6e08307
BLAKE2b-256 checksum
How to use checksums
38d8758575b033a0ed6cb89864ef47e7bc418f2b45987133cb3b26f74743480c
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 10, 2026.

Transparency log

Release history Release notifications | RSS feed

0.3.0

2 release files

This release

0.2.5 This release

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

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