Skip to main content

keecas

Tests PyPI version Python Version Documentation

Symbolic and units-aware calculations for Jupyter notebooks with beautiful LaTeX output.

What is keecas?

keecas minimizes boilerplate for symbolic calculations using Python dicts as the core container - keys represent left-hand side symbols, values represent right-hand side expressions. Built on SymPy, Pint, and Pipe, it provides automatic unit conversion and LaTeX rendering for Quarto documents.

Quick Example

from keecas import symbols, u, pc, show_eqn

# 1. Define symbols with LaTeX notation
F, A, sigma = symbols(r"F, A, \sigma")

# 2. Cell-local parameters
_p = {
    F: 10 * u.kN,
    A: 50 * u.cm**2,
}

# 3. Cell-local expressions
_e = {
    sigma: "F / A" | pc.parse_expr
}

# 4. Evaluation with pipe operations
_v = {
    k: v | pc.subs(_e | _p) | pc.convert_to([u.MPa]) | pc.N
    for k, v in _e.items()
}

# 5. Display as LaTeX amsmath
show_eqn([_p | _e, _v])

Output:

\begin{align}
    F & = 10{\,}\text{kN} &    \\[8pt]
    A & = 50{\,}\text{cm}^{2} &    \\[8pt]
    \sigma & = \dfrac{F}{A} & = 2.0{\,}\text{MPa}
\end{align}

See hello_world.ipynb for more examples.

Installation

pip install keecas
# or
uv add keecas

Quick Start

Launch JupyterLab with keecas template:

keecas edit                        # Minimal template
keecas edit --template quickstart  # Comprehensive examples
keecas edit analysis.ipynb         # Open specific notebook
keecas edit --temp                 # Temporary session

Configuration

Manage global and local settings via TOML files:

# Initialize configuration
keecas config init --global

# Edit configuration
keecas config edit --global    # Terminal editor
keecas config open --local     # System editor (GUI)

# View configuration
keecas config show             # Merged settings
keecas config path             # File locations

Key Features

  • Dict-based equations: Natural mapping of LHS to RHS
  • Pipe operations: Chain operations like expr | pc.subs(...) | pc.N
  • Unit-aware: Automatic conversion between Pint and SymPy units
  • LaTeX output: Renders as amsmath align blocks
  • Cross-references: Label generation for Quarto documents
  • Multi-language: 10 languages supported (5 fully localized)
  • Configuration: Global/local TOML-based settings

Documentation

Full documentation: https://kompre.github.io/keecas

License

MIT License - see LICENSE

Metadata

Release files for keecas 1.5.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 keecas 1.5.0
File Size Uploaded
keecas-1.5.0.tar.gz 93.1 kB Details

Built distribution (wheel)

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

Total release size: 207.3 kB

Release files / keecas-1.5.0.tar.gz

Download URL keecas-1.5.0.tar.gz
Size 93.1 kB
Tags Source
SHA-256 checksum
How to use checksums
cbf71d386d3c0eb65cafb6d5208485f389921c1bba64ed3f6a620d128ac5901e
BLAKE2b-256 checksum
How to use checksums
6caa6e3b437e640bd44025beb8671154c42e51451da4772a916ebc58a3a6bc12
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 Oct 3, 2026.

Transparency log

Release files / keecas-1.5.0-py3-none-any.whl

Download URL keecas-1.5.0-py3-none-any.whl
Size 114.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
f4b4385a44d4e76ad3fd695e63938afca1f4c3f92e6e80113708573a8c23ace6
BLAKE2b-256 checksum
How to use checksums
524d713298d387baa82ef3c1457919bec0a5756476d391ade305e1d2a5924a23
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 Oct 3, 2026.

Transparency log

Release history Release notifications | RSS feed

1.7.0

2 release files

1.6.1

2 release files

1.6.0

2 release files

This release

1.5.0 This release

2 release files

1.4.1

2 release files

1.4.0

2 release files

1.3.0

2 release files

1.2.1

2 release files

1.2.0

2 release files

1.1.4

2 release files

1.1.3

2 release files

1.1.2

2 release files

1.1.1

2 release files

1.1.0

2 release files

1.0.4

2 release files

1.0.2

2 release files

1.0.1

2 release files

1.0.0

2 release files

0.1.2

2 release files

0.1.1

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