Skip to main content

Caxton

Declarative document generation for Python

Contributors Forks Stars Issues


🏗️ This project is currently under development and is not ready for production use.

:mag: About

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.

:alembic: Built With

Python Excel uv wps

Quick start

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

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

report = spreadsheet(
    sheet(
        "People",
        table(
            rows,
            text("name").titled("Name"),
        ),
    ),
)

result = render(report)

write(report, "people.xlsx")

More examples are available in the example projects.

:books: Documentation

Full documentation is at dzhalaevd.github.io/caxton.

:scroll: Licensing

  • The project is licensed under the MIT

Works on Open-Source

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

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

caxton-0.1.0.tar.gz (143.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

caxton-0.1.0-py3-none-any.whl (159.2 kB view details)

Uploaded Python 3

File details

Details for the file caxton-0.1.0.tar.gz.

File metadata

  • Download URL: caxton-0.1.0.tar.gz
  • Upload date:
  • Size: 143.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for caxton-0.1.0.tar.gz
Algorithm Hash digest
SHA256 b58a062d4578de17e9de6ac8822a1326a8ac175eb83a392a3cd78c72fd9893bd
MD5 116919979cf21f9b0f52e8b7184f7900
BLAKE2b-256 b832ec50c15a565e230660b4793222b9c290923952fe24092885496fe2cef808

See more details on using hashes here.

Provenance

The following attestation bundles were made for caxton-0.1.0.tar.gz:

Publisher: publish.yml on dzhalaevd/caxton

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file caxton-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: caxton-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 159.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for caxton-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 08fc75159e42e8e83286daa6978540b8500bafc8cb191e1ab5e4021345bbf268
MD5 547a4a551843b67dbad1dc962768dc03
BLAKE2b-256 37970c3b837ff16f016ec0b2e9546d0dd72f8dfd6d227e7faacb0036d4a6e32a

See more details on using hashes here.

Provenance

The following attestation bundles were made for caxton-0.1.0-py3-none-any.whl:

Publisher: publish.yml on dzhalaevd/caxton

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page