Skip to main content

ChakataStat — Python client

A thin Python client for the ChakataStat analysis engine. It drives the same analyses the desktop app's menus, AI assistant and MCP server run — from real Python, with loops, comprehensions and the whole data-analysis ecosystem one to_polars() away.

It is a client, not an engine: it spawns ChakataStat --mcp <file> (the app's headless MCP launch mode) as a subprocess and talks JSON-RPC to it over stdio. The dataset stays in the one native Rust engine; nothing statistical runs in Python — so the numbers this client returns can never drift from the desktop app's. No embedded interpreter, no second copy of the data.

This package requires the ChakataStat desktop application. It contains no statistics of its own — it drives an installed copy of the app, and does nothing without one. Get the app (free) from chakatastat.app — Microsoft Store, Snap Store or .deb.

Install

pip install chakatastat              # no required dependencies
pip install "chakatastat[polars]"    # also pull in polars, for to_polars()

The client's version tracks the app's: install the client version that matches the app you have (e.g. client 0.11.0 pairs with app 0.11.0).

The client finds the ChakataStat binary from, in order: the binary= argument to open(), the ChakataStat_BIN environment variable, or ChakataStat on your PATH.

export ChakataStat_BIN=/path/to/ChakataStat     # e.g. the release bundle

Use

import chakatastat as ig

with ig.open("survey.ckd") as ds:
    # Each analysis tool is a method; arguments are the tool's parameters.
    print(ds.descriptives(variables=["income", "age"]))
    ds.regression(dependent="sales", predictors=["price", "ads"])

    # Real Python around the calls:
    for col in ds.numeric_vars():
        ds.frequencies(variables=[col])

    # The escape hatch into the full ecosystem:
    df = ds.to_polars()
    print(df.describe())

open() accepts any format the app's File → Open does (.ckd, CSV/TSV, Excel, Parquet), or no path for an empty dataset. Pass read_only=True to forbid the data-mutating transforms.

A call returns a Result whose text is the engine's result tables; print(...) or str(...) shows them. A call the engine cannot run (a bad variable name, a wrong type) raises ChakataStat.ToolError with the engine's own message.

ds.tools lists every available tool name; ds.call(name, **args) is the explicit form behind the generated methods.

Generating a script from the app

The desktop app's Syntax Console can Export as Python, turning a recorded session into a runnable script that uses this client — so a point-and-click analysis becomes reproducible Python with no language to learn.

License

Three things, licensed three ways (the long form is the bundled LICENSE file):

  • This client may be installed, used and redistributed freely, including commercially.
  • The ChakataStat application it drives is proprietary — free to use for any purpose, including commercially, but not open source.
  • The name and logo are reserved.

Metadata

Release files for chakatastat 0.23.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 chakatastat 0.23.0
File Size Uploaded Provenance
chakatastat-0.23.0.tar.gz 10.2 kB With provenance Details

Built distribution (wheel)

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

Total release size: 19.5 kB

Release files / chakatastat-0.23.0.tar.gz

Download URL chakatastat-0.23.0.tar.gz
Size 10.2 kB
Tags Source
SHA-256 checksum
How to use checksums
43e40dd8f40f1e9024220cb3ff6889146b06f49690307df45d3124294e316aa4
BLAKE2b-256 checksum
How to use checksums
53f9ed57a8db4f0813747c9b17155399f74ca2c803fcff5744b5fd35a645e267
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 Aug 31, 2026.

Transparency log

Release files / chakatastat-0.23.0-py3-none-any.whl

Download URL chakatastat-0.23.0-py3-none-any.whl
Size 9.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
0c512cbb3f72b3dd5c32d8b9310017604c37ba1fb10bd60cffedea96130ad1a5
BLAKE2b-256 checksum
How to use checksums
a8b9e84d13b0d9bac629baa12d02dd6c6a48d1904ef5d5f4c0b0b51f86974e15
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 Aug 31, 2026.

Transparency log

Security for chakatastat 0.23.0

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.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for chakatastat-0.23.0.tar.gz

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 Aug 31, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

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