concoct-rs / concoct

A reactive runtime for embedded systems in Rust
Apache License 2.0
368 stars 8 forks source link
reactive rust

Concoct

Crates.io version docs.rs docs CI status


Concoct is a reactive runtime for embedded systems.

use concoct::{
    task::{self, Task},
    System,
};

fn app(_count: &mut i32) -> impl Task<i32> {
    task::from_fn(|_| dbg!("Hello World!"))
}

fn main() {
    let mut system = System::new(0, app);
    system.build();
    system.rebuild();
}

Goals

This crate is intended to provide a generic reactive system for a wide range of use cases. It was originally intended for user-interfaces, and is inspired by xilem. However, I noticed the system being created was better suited for robotics or animation (where continous systems are more common than discrete ones).