Skip to main content

chili

PyPI - Version Visual Studio Marketplace Version PyPI - Version

Chili

A programming language for data analysis and engineering, written in Rust.

Chili uses Polars for data manipulation and Arrow/Parquet for data storage.

Language Syntaxes

Chili provides two language syntaxes:

  • chili — a modern syntax similar to JavaScript.
  • pepper — a vintage syntax similar to q.

Features

  • Polars-powered — full Polars DataFrame support for high-performance data manipulation
  • Arrow / Parquet storage — native support for columnar data formats
  • Partitioned tables — date-partitioned Parquet storage with partition pruning
  • Lazy evaluation — lazy DataFrames with collect for deferred computation
  • IPC / TCP — built-in TCP listener for remote connections
  • Tick / Sub — publish-subscribe infrastructure for real-time data
  • Job scheduler — periodic job execution and memory monitoring
  • Cross-platform — Linux, macOS, and Windows

Installation

Via pip (recommended)

pip install chili-pie

From source

cargo build --release --bin chili

Python bindings (chili-sauce)

pip install chili-sauce

Quick Start

Launch the REPL:

# chili syntax (default)
chili

# pepper syntax
chili -P

Evaluate a script:

chili script.chi

Architecture

crates/
├── chili-bin      # CLI binary & REPL
├── chili-core     # Engine state, evaluator, IPC, and built-in functions
├── chili-op       # Data operations (partitioned I/O, scan, eval)
└── chili-parser   # Chumsky-based parser for both syntaxes
Package Description
chili-pie Chili runtime distributed as a Python wheel
chili-sauce Python bindings for EngineState via PyO3

Development

# Build
cargo build --bin chili

# Test
cargo test

# Clippy
cargo clippy --fix --allow-dirty

# Build & install Python runtime wheel
maturin build --release --out dist --manifest-path crates/chili-bin/Cargo.toml

# Build & install Python bindings
maturin develop --release --manifest-path crates/chili-py/Cargo.toml

A Taskfile is provided for common workflows — run task --list to see all available tasks.

References

  • Polars — an open-source library for data manipulation
  • chumsky — a high-performance parser combinator library
  • kola — source code reused for interfacing with q
  • Nushell — a new type of shell

Thanks to the authors of these projects and all other open-source projects for their great work.

License

MIT

Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

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

chili_pie-0.9.9-py3-none-win_amd64.whl (31.2 MB view details)

Uploaded Python 3Windows x86-64

chili_pie-0.9.9-py3-none-musllinux_1_2_x86_64.whl (29.5 MB view details)

Uploaded Python 3musllinux: musl 1.2+ x86-64

chili_pie-0.9.9-py3-none-musllinux_1_2_aarch64.whl (26.8 MB view details)

Uploaded Python 3musllinux: musl 1.2+ ARM64

chili_pie-0.9.9-py3-none-manylinux_2_28_x86_64.whl (30.8 MB view details)

Uploaded Python 3manylinux: glibc 2.28+ x86-64

chili_pie-0.9.9-py3-none-manylinux_2_28_aarch64.whl (26.9 MB view details)

Uploaded Python 3manylinux: glibc 2.28+ ARM64

chili_pie-0.9.9-py3-none-macosx_11_0_arm64.whl (26.6 MB view details)

Uploaded Python 3macOS 11.0+ ARM64

chili_pie-0.9.9-py3-none-macosx_10_12_x86_64.whl (29.4 MB view details)

Uploaded Python 3macOS 10.12+ x86-64

File details

Details for the file chili_pie-0.9.9-py3-none-win_amd64.whl.

File metadata

  • Download URL: chili_pie-0.9.9-py3-none-win_amd64.whl
  • Upload date:
  • Size: 31.2 MB
  • Tags: Python 3, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.0 {"installer":{"name":"uv","version":"0.12.0","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for chili_pie-0.9.9-py3-none-win_amd64.whl
Algorithm Hash digest
SHA256 de8c83062dbdb32ca9e39f61cae2af3febe6d332eae5fbbdcfdb6a7118c944ee
MD5 61586070d8c1d9fad44028f5372e2f29
BLAKE2b-256 1e8d6153bbc6d1719eededbe10b1967077805e95660d3d76f8dafd4c651307f3

See more details on using hashes here.

File details

Details for the file chili_pie-0.9.9-py3-none-musllinux_1_2_x86_64.whl.

File metadata

  • Download URL: chili_pie-0.9.9-py3-none-musllinux_1_2_x86_64.whl
  • Upload date:
  • Size: 29.5 MB
  • Tags: Python 3, musllinux: musl 1.2+ x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.0 {"installer":{"name":"uv","version":"0.12.0","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for chili_pie-0.9.9-py3-none-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 45fe15640449364f52b1aaeb9f97bddce5bce2b3135adc66bd43dde6f4edb10d
MD5 bdcca96250c266d18a40a74c9069e024
BLAKE2b-256 53864ef8e4431b3213b596704e65c6c1e230168d25dd852cd27965ad500d2f75

See more details on using hashes here.

File details

Details for the file chili_pie-0.9.9-py3-none-musllinux_1_2_aarch64.whl.

File metadata

  • Download URL: chili_pie-0.9.9-py3-none-musllinux_1_2_aarch64.whl
  • Upload date:
  • Size: 26.8 MB
  • Tags: Python 3, musllinux: musl 1.2+ ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.0 {"installer":{"name":"uv","version":"0.12.0","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for chili_pie-0.9.9-py3-none-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 de9e9f9abc055bbdf1ea1e8fc30fd10c46b2268ea365277176f992bc6bef0c22
MD5 e5b35bf1b13cbf6a9ec0ce41a092f324
BLAKE2b-256 12157e95dd76ac550d469d393309cfd255e2d9481d2d5af4aa732a4b53a93c60

See more details on using hashes here.

File details

Details for the file chili_pie-0.9.9-py3-none-manylinux_2_28_x86_64.whl.

File metadata

  • Download URL: chili_pie-0.9.9-py3-none-manylinux_2_28_x86_64.whl
  • Upload date:
  • Size: 30.8 MB
  • Tags: Python 3, manylinux: glibc 2.28+ x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.0 {"installer":{"name":"uv","version":"0.12.0","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for chili_pie-0.9.9-py3-none-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 e8b78a7be0e36b0e95c925f9f1438011faa0e2973c23910eb9de4894f989afde
MD5 60432d7b332df645ea44d63400587ad6
BLAKE2b-256 2e8bd11366ae189616b7afff2c85eb579022be42c6f4f6eb212787eb229dfbe0

See more details on using hashes here.

File details

Details for the file chili_pie-0.9.9-py3-none-manylinux_2_28_aarch64.whl.

File metadata

  • Download URL: chili_pie-0.9.9-py3-none-manylinux_2_28_aarch64.whl
  • Upload date:
  • Size: 26.9 MB
  • Tags: Python 3, manylinux: glibc 2.28+ ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.0 {"installer":{"name":"uv","version":"0.12.0","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for chili_pie-0.9.9-py3-none-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 a16164a09f5981a07f5a2a49a507fb458f93c5953d9f5001224a95c296377e9e
MD5 5380661abe6ba88274b594ffa70ef781
BLAKE2b-256 4f76f76e226f8e3b143fad1daae0e1ee1ddf0b3a569e8fb9e623412e3d850c57

See more details on using hashes here.

File details

Details for the file chili_pie-0.9.9-py3-none-macosx_11_0_arm64.whl.

File metadata

  • Download URL: chili_pie-0.9.9-py3-none-macosx_11_0_arm64.whl
  • Upload date:
  • Size: 26.6 MB
  • Tags: Python 3, macOS 11.0+ ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.0 {"installer":{"name":"uv","version":"0.12.0","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for chili_pie-0.9.9-py3-none-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 d002d94c917a7f50a1ad352d179990146d2e577b103a947c8c2e72ea0a45274a
MD5 c211945cf0320891c08ba83651448894
BLAKE2b-256 dfd4dc1cc19e0a23206fee5877ea87ea4e561b2ee3de629767d31965b5951f83

See more details on using hashes here.

File details

Details for the file chili_pie-0.9.9-py3-none-macosx_10_12_x86_64.whl.

File metadata

  • Download URL: chili_pie-0.9.9-py3-none-macosx_10_12_x86_64.whl
  • Upload date:
  • Size: 29.4 MB
  • Tags: Python 3, macOS 10.12+ x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.0 {"installer":{"name":"uv","version":"0.12.0","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for chili_pie-0.9.9-py3-none-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 3701c4374045c74de088114dab351db42be7de3aeb4813f4bec3600f87b31027
MD5 edf148e15def25d2363d724e0604e308
BLAKE2b-256 d274a45a543c753824e4f9b0010831057236eec3e80419df97e8adb2d7e77e99

See more details on using hashes here.

Release history Release notifications | RSS feed

0.10.7

7 files

0.10.6

7 files

0.10.5

7 files

0.10.4

7 files

0.10.3

7 files

0.10.2

7 files

0.10.1

7 files

0.10.0

7 files

This release

0.9.9 This release

7 files

0.9.8

5 files

0.9.7

5 files

0.9.6

5 files

0.9.5

5 files

0.9.3

5 files

0.9.2

5 files

0.9.1

5 files

0.8.2

5 files

0.8.1

5 files

0.8.0

4 files

0.7.5

5 files

0.7.4

5 files

0.7.3

5 files

0.7.2

5 files

0.7.1

5 files

0.7.0

4 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