Skip to main content

Drop-in replacement for python-docx that connects to Athena's Superdoc/Keryx collaborative document stack

Project description

athena-python-docx

Drop-in replacement for python-docx that connects to Athena's Superdoc + Keryx collaborative document stack.

Quick start

from docx import Document
from docx.shared import Inches, Pt, RGBColor

# Open an existing SuperDoc asset by its Athena asset_id
with Document("asset_abc123") as doc:
    doc.add_heading("Market Analysis", level=1)

    p = doc.add_paragraph()
    r = p.add_run("Revenue grew ")
    highlight = p.add_run("12.3% year-over-year")
    highlight.bold = True
    highlight.font.color.rgb = RGBColor(0x00, 0x80, 0x00)
    p.add_run(".")

    t = doc.add_table(rows=2, cols=2, style="TableGrid")
    t.cell(0, 0).text = "Segment"
    t.cell(0, 1).text = "Revenue"
    t.cell(1, 0).text = "Enterprise"
    t.cell(1, 1).text = "$4.3M"

    doc.save()

API parity rule

This SDK mirrors python-docx's public API exactly. See CLAUDE.md for the full contract.

Development

uv venv
uv pip install -e ".[dev]"
uv run pytest tests/ -x

DocX Execution Lab

For fast local repros against real Athena document assets, use the headless runner in scripts/docx_exec_lab.py. It executes an arbitrary Python snippet with this checkout of athena-python-docx, captures stdout/stderr/errors/timings, and can export the resulting .docx for text assertions. scripts/docx_exec_lab_server.py adds a local UI with an Olympus/SuperDoc embed preview pane. See DOCX_EXEC_LAB.md.

Environment variables

Required when connecting to Keryx (set by Athena backend when executing in Daytona):

  • SUPERDOC_COLLAB_TOKEN — short-lived Keryx JWT
  • KERYX_WS_URL — Keryx WebSocket base URL
  • ATHENA_WORKSPACE_ID — workspace routing segment

License

MIT

Project details


Download files

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

Source Distribution

athena_python_docx-0.16.1.tar.gz (773.1 kB view details)

Uploaded Source

Built Distribution

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

athena_python_docx-0.16.1-py3-none-any.whl (268.6 kB view details)

Uploaded Python 3

File details

Details for the file athena_python_docx-0.16.1.tar.gz.

File metadata

  • Download URL: athena_python_docx-0.16.1.tar.gz
  • Upload date:
  • Size: 773.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.14

File hashes

Hashes for athena_python_docx-0.16.1.tar.gz
Algorithm Hash digest
SHA256 5b1bcc9db906ff507c600cf706e52c4ac92d053b336fdee6aa6801f5ff93d92d
MD5 55658683376da5b7a3c71f218d63e066
BLAKE2b-256 f64c3e7c821c8d9cb571103608d23cf2a313f2f025ce590ccf3dd7d39457e0c0

See more details on using hashes here.

File details

Details for the file athena_python_docx-0.16.1-py3-none-any.whl.

File metadata

File hashes

Hashes for athena_python_docx-0.16.1-py3-none-any.whl
Algorithm Hash digest
SHA256 713466bbdcf9cbe8664e9c4c47dacea624e279bdde239ede98c3b32858739f21
MD5 6867586fc8af61b134aa2c23be80cf3f
BLAKE2b-256 a06d5d00db45a277e5e593db19bb3c3ed34ead80fe5f4045133e4d8cd20e5cd7

See more details on using hashes here.

Supported by

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