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
uvx keecas edit analysis.ipynb --sandbox  # Isolated env with the notebook's inline deps (uv)

A notebook declares extra dependencies with a PEP 723 # /// script block in a comment-only code cell; --sandbox builds a throwaway environment with them via uv. See the CLI reference.

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.7.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.7.0
File Size Uploaded
keecas-1.7.0.tar.gz 103.3 kB Details

Built distribution (wheel)

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

Total release size: 227.7 kB

Release files / keecas-1.7.0.tar.gz

Download URL keecas-1.7.0.tar.gz
Size 103.3 kB
Tags Source
SHA-256 checksum
How to use checksums
31e6ebed1db77d153691975cfb41811641bd88e52c7d5417e302aede5417173f
BLAKE2b-256 checksum
How to use checksums
f8fcd2e64b07300a9d1a6a2440de61e47a7211e90f33fbff2d84bf962f443a24
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 14, 2026.

Transparency log

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

Download URL keecas-1.7.0-py3-none-any.whl
Size 124.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
17030732c1d588e31b4334bafd536d784cfa72e7a7cd6eb498cb2385ba0c84d8
BLAKE2b-256 checksum
How to use checksums
d6e716dd1dc98c8fea3a01dff1492597ce4c83419019e9343b99ffa84fb22aef
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 14, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

1.7.0 This release

2 release files

1.6.1

2 release files

1.6.0

2 release files

1.5.0

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