Skip to content

tkr-sh/modx

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

28 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

modx

github release crates.io downloads docs.rs docs stars

modx is an experimental way to handle states with structs in Dioxus inspired by mobx.

Example

#[modx::store]
struct CounterStore {
    count: i64,
}

impl CounterStore {
    fn inc(&mut self) {
        self.count += 1;
    }

    fn dec(&mut self) {
        self.count -= 1;
    }
}

fn app() -> Element {
    let mut store = CounterStore::new();
    rsx! {
        button { onclick: move |_| store.inc(), "+1" }
        button { onclick: move |_| store.dec(), "-1" }
        "{store.count}"
    }
}

Documentation

Documentation can be found at https://docs.rs/modx

More examples

There are some examples at ~/examples so you can see how to use modx and how it behaves.

You can run an example with:

cargo run --example this_example

with this_example being the name of the file (without the extension)

Development progress

In the near future, most of the hooks should be rewrote to work with modx.

Here is the current status:

  • Signals
  • Props
  • Resources
  • Memo
  • Server future