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.10.0-py3-none-win_amd64.whl (32.1 MB view details)

Uploaded Python 3Windows x86-64

chili_pie-0.10.0-py3-none-musllinux_1_2_x86_64.whl (30.4 MB view details)

Uploaded Python 3musllinux: musl 1.2+ x86-64

chili_pie-0.10.0-py3-none-musllinux_1_2_aarch64.whl (27.7 MB view details)

Uploaded Python 3musllinux: musl 1.2+ ARM64

chili_pie-0.10.0-py3-none-manylinux_2_28_x86_64.whl (31.7 MB view details)

Uploaded Python 3manylinux: glibc 2.28+ x86-64

chili_pie-0.10.0-py3-none-manylinux_2_28_aarch64.whl (27.9 MB view details)

Uploaded Python 3manylinux: glibc 2.28+ ARM64

chili_pie-0.10.0-py3-none-macosx_11_0_arm64.whl (27.5 MB view details)

Uploaded Python 3macOS 11.0+ ARM64

chili_pie-0.10.0-py3-none-macosx_10_12_x86_64.whl (30.3 MB view details)

Uploaded Python 3macOS 10.12+ x86-64

File details

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

File metadata

  • Download URL: chili_pie-0.10.0-py3-none-win_amd64.whl
  • Upload date:
  • Size: 32.1 MB
  • Tags: Python 3, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.1 {"installer":{"name":"uv","version":"0.12.1","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.10.0-py3-none-win_amd64.whl
Algorithm Hash digest
SHA256 f054eee7639e68de05ec5573e3f71ea6e5f7ea5739e5cf054c398f914cf8a0cd
MD5 dd7a5ab2ab77ad785b05583ae5698726
BLAKE2b-256 40283934cb6bc46b0a28d96be4c30adb923b081d4929e56551a17c448ef71544

See more details on using hashes here.

File details

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

File metadata

  • Download URL: chili_pie-0.10.0-py3-none-musllinux_1_2_x86_64.whl
  • Upload date:
  • Size: 30.4 MB
  • Tags: Python 3, musllinux: musl 1.2+ x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.1 {"installer":{"name":"uv","version":"0.12.1","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.10.0-py3-none-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 4c04d3a9ca93f3cee5e98a9d91abe60c47999f5f84e47868e83ad108145978f2
MD5 f44837767c49ad86853021725dc18f23
BLAKE2b-256 63f75de6be975285af288f689e498a2e9ac374f96960ec60a5fe484eddb58530

See more details on using hashes here.

File details

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

File metadata

  • Download URL: chili_pie-0.10.0-py3-none-musllinux_1_2_aarch64.whl
  • Upload date:
  • Size: 27.7 MB
  • Tags: Python 3, musllinux: musl 1.2+ ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.1 {"installer":{"name":"uv","version":"0.12.1","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.10.0-py3-none-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 1070900593db5aefb796de597624f91f7dbe477f0148cfebbaec0a82f3c40df4
MD5 94672734b1bbd40406e79a5e3019b2d8
BLAKE2b-256 e2e3c36cce0c15293054e54c970537ed9c1045767518c7a97d07a82ddcf81807

See more details on using hashes here.

File details

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

File metadata

  • Download URL: chili_pie-0.10.0-py3-none-manylinux_2_28_x86_64.whl
  • Upload date:
  • Size: 31.7 MB
  • Tags: Python 3, manylinux: glibc 2.28+ x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.1 {"installer":{"name":"uv","version":"0.12.1","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.10.0-py3-none-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 338c27fceb5f51c20c781b42516005299045e85d49519a6dfc432fd91902339f
MD5 a2f2c7d41ff45f9e286dec7c56a59242
BLAKE2b-256 c2040430ccf3c9fa9828fe9b5aabfb5820201613d69533186fa31608eae57ade

See more details on using hashes here.

File details

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

File metadata

  • Download URL: chili_pie-0.10.0-py3-none-manylinux_2_28_aarch64.whl
  • Upload date:
  • Size: 27.9 MB
  • Tags: Python 3, manylinux: glibc 2.28+ ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.1 {"installer":{"name":"uv","version":"0.12.1","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.10.0-py3-none-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 7b2b1d47020024a7d80e4d365368ac96c2f54c2e623fdabf5e92c5581657108e
MD5 367a3b77fb0866423063ddc942e19a9e
BLAKE2b-256 867582084d342f6f0efeaee16de41da3494e6a8ac4ff2f35827b9f29c065475b

See more details on using hashes here.

File details

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

File metadata

  • Download URL: chili_pie-0.10.0-py3-none-macosx_11_0_arm64.whl
  • Upload date:
  • Size: 27.5 MB
  • Tags: Python 3, macOS 11.0+ ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.1 {"installer":{"name":"uv","version":"0.12.1","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.10.0-py3-none-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 d5925d66bc04f9acac5ecc7f8f7018d18e0fbe57e2f03528de3ca2c6f88ad690
MD5 ba7b0d0bb2187c03ceed512cf454556c
BLAKE2b-256 867952bbe721d23ebfd5dcb174aed7a85855a9075baeef8627b7c1ca8377295e

See more details on using hashes here.

File details

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

File metadata

  • Download URL: chili_pie-0.10.0-py3-none-macosx_10_12_x86_64.whl
  • Upload date:
  • Size: 30.3 MB
  • Tags: Python 3, macOS 10.12+ x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.1 {"installer":{"name":"uv","version":"0.12.1","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.10.0-py3-none-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 7dbdc330a7bce6c14d719a1fb1b3831d77759c175c912a9fdcbde1af9b206540
MD5 55ceb47638c07110376c1342a23e1e4b
BLAKE2b-256 24334e55d94ae31f98b7387644de36c90e58ef58d1c1bc1d65a81698daf0381b

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

This release

0.10.0 This release

7 files

0.9.9

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