Analytics library
Project description
# tributary Python Streams
[![Build Status](https://travis-ci.org/timkpaine/tributary.svg?branch=master)](https://travis-ci.org/timkpaine/tributary) [![GitHub issues](https://img.shields.io/github/issues/timkpaine/tributary.svg)]() [![codecov](https://codecov.io/gh/timkpaine/tributary/branch/master/graph/badge.svg)](https://codecov.io/gh/timkpaine/tributary) [![BCH compliance](https://bettercodehub.com/edge/badge/timkpaine/tributary?branch=master)](https://bettercodehub.com/) [![PyPI](https://img.shields.io/pypi/l/tributary.svg)](https://pypi.python.org/pypi/tributary) [![PyPI](https://img.shields.io/pypi/v/tributary.svg)](https://pypi.python.org/pypi/tributary) [![Docs](https://img.shields.io/readthedocs/tributary.svg)](https://tributary.readthedocs.io)
## Python Data Streams ![](https://raw.githubusercontent.com/timkpaine/tributary/master/docs/img/example.gif)
# Stream Types Tributary offers several kinds of streams:
## Reactive These are synchronous, reactive data streams, built using python generators. They are designed to mimic complex event processors in terms of event ordering.
## Asynchronous These are synchronous, reactive data streams, built using asynchronous python generators. They are a variant of the reactive streams, but should offer performance improvements over the non-asynchronous variants.
## Functional These are functional streams, built by currying python functions (callbacks).
## Lazy These are lazily-evaluated python streams, where outputs are propogated only as inputs change.
## Event Loop These function as tornado based event-loop based streams similar to streamz.
# Examples - [Reactive](docs/examples/reactive.md) - [Lazy](docs/examples/lazy.md)
# Math (Work in progress)
# Sources and Sinks (Work in progress)
kafka
websocket
http
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.