iridis
iridis
is a rust library for building dataflow applications. It provides simple APIs to:
- Make a standalone node in Rust
- Assemble nodes into a dataflow graph
- Customize the runtime with plugins
iridis
is inspired by both dora-rs
and zenoh-flow
, two projects that focus on dataflow programming. It aims to provide a more lightweight, up to date and extensible solution for building dataflow applications in Rust.
Features
-
Fast builds:
iridis
is designed to be simple and easy to use. It tries to lower the number of dependencies and the complexity of the code so that each time you want to try your application you don't have to spend dozen of seconds to compile it! -
Fast, that's all:
iridis
design is based onshared-library
loading. So that each node is in fact the same globalprocess
, allowing for sharing data effectively. -
Async:
iridis
is built on top oftokio
, a powerful async runtime for Rust. This allows you to build highly concurrent applications with ease. -
Extensible:
iridis
provides a plugin system that allows you to extend the runtime with custom plugins. This allows you to customize the behavior of the runtime to suit your needs. (seepyridis
for a example of a plugin that allows you to usepython
as a node in the dataflow graph)