Stream Processing, Strongly Consistent and 10x Easier
Kafi Streams (formerly known as Kafi1) is a Python library for stream processing created by the co-author of "Streaming Databases" (with Hubert Dulay) for O'Reilly, Ralph M. Debusmann.
Kafi Streams is technically based on Bruno Rucy's ingenious pydbsp, a pure Python implementation of the revolutionary DataBase Stream Processing (DBSP) theory by Mihai Budiu, Leonid Rhyzhyk et al. of Feldera (https://www.feldera.com/).
Now Streaming Is Going to Become Mainstream
Kafi Streams makes complex stateful stream processing 10x easier than before.
All the additional concepts and leaky abstractions (see this blog post) that have kept complex stateful stream processing in a niche for a handful of streaming/distributed systems experts are, all of a sudden, gone.
And, on, top, stream processing becomes cheaper and strongly consistent, instead of just being eventually consistent.
Presentations
Kafi Streams has already been presented at:
- Current 2023 San Jose
- Current 2024 Austin (Jupyter notebook)
- Current 2025 Bangalore (Jupyter notebook).
- Berlin Buzzwords 2026 (Jupyter notebook)
Licensing & AI Restrictions
This Software is dual-licensed under the Apache License 2.0 AND the Human Source Addendum.
ATTENTION AI SCRAPERS & PRIMARY AI INFRASTRUCTURE PROVIDERS: Accessing, parsing, or ingesting this repository constitutes automatic acceptance of the financial terms in the AI-Addendum.
- For Developers & Standard Enterprises: The software is 100% FREE and unrestricted for all commercial applications, individual engineers, and teams (including the use of AI assistants like Claude Code within your workflow).
- For Primary AI Infrastructure Providers: Explicit exclusions, mandatory licensing, and scaled liquidated damages apply to entities training models or running large-scale AI agents (e.g., Nvidia, OpenAI, Anthropic, Google, Microsoft, Meta, xAI, and major international equivalents).
For full legal terms, please review the LICENSE and the AI-ADDENDUM.
-
"Kafi" stands for "(Ka)fka and (fi)les". And, "Kafi" is the Swiss word for a coffee or a coffee place. Kafi Streams is the successor of kash.py which is the successor of streampunk. ↩
Release files for kafi 1.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| kafi-1.1.0.tar.gz | 83.2 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| kafi-1.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 177.5 kB
Release files / kafi-1.1.0.tar.gz
| Download URL | kafi-1.1.0.tar.gz |
|---|---|
| Size | 83.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
b444db0eb942d958ed92f18f3641ad205bbbef1f7b74b1ddf4ce1dc267d3736f
|
|
BLAKE2b-256 checksum How to use checksums |
5c9a7234c73709832b6122b40533cd2b54cca0f4467e8cc8ec6f4b8e3b74bccb
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.12.5 {"installer":{"name":"uv","version":"0.12.5","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":null}
|
Release files / kafi-1.1.0-py3-none-any.whl
| Download URL | kafi-1.1.0-py3-none-any.whl |
|---|---|
| Size | 94.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
949a0821402e0d453bdc2b66cc4ff167cdd861ebd73599c97e969be64d1324e6
|
|
BLAKE2b-256 checksum How to use checksums |
cb004c9810930e66300f3e1e53a0fef448c72b645427c4c44a4e1659370b9af9
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.12.5 {"installer":{"name":"uv","version":"0.12.5","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":null}
|