← All repos

faust

Python Stream Processing

asynciodistributed-systemskafkakafka-streamspythonstream-processing
Browse cluster: SQL databases and distributed systems
4,138commits
89contributors
5languages

Tech stack & purpose

Faust is a stream processing library for Python that ports concepts from Kafka Streams, built by Robinhood to process billions of events daily. It provides both stream and event processing capabilities using Python's asyncio library and static typing, requiring Python 3.6 or later for async/await syntax support. The system includes an in-memory durable key-value store backed by RocksDB, handles state persistence through Kafka topics as write-ahead logs, and integrates with popular Python libraries like Django, Flask, NumPy, and TensorFlow. The library has been deprecated and is no longer actively maintained by Robinhood, with development continuing in a community-managed fork.

Community & reference links

Languages

Python
98.5%
Cython
0.6%
HTML
0.5%
Makefile
0.3%
Shell
0.1%

Contributors (top 30 of 89)