Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/brunocodutra/reducer
A predictable reactive framework for Rust apps inspired by Redux
https://github.com/brunocodutra/reducer
flux-architecture reactive-programming
Last synced: about 12 hours ago
JSON representation
A predictable reactive framework for Rust apps inspired by Redux
- Host: GitHub
- URL: https://github.com/brunocodutra/reducer
- Owner: brunocodutra
- License: mit
- Created: 2018-09-11T21:11:31.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2024-09-28T03:30:58.000Z (3 months ago)
- Last Synced: 2024-12-13T19:45:13.055Z (9 days ago)
- Topics: flux-architecture, reactive-programming
- Language: Rust
- Homepage: https://crates.io/crates/reducer
- Size: 291 KB
- Stars: 58
- Watchers: 4
- Forks: 1
- Open Issues: 6
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
README
# Reducer [![docs.badge]][docs.home] [![codecov.badge]][codecov.home]
A platform for reactive programming in Rust that can be used to manage the state of
any kind of application. It shines when used to drive graphical user interfaces and
[integrates particularly well with immediate mode GUI frameworks](#examples).## Using Reducer
Reducer is available on [crates.io], simply add it as a dependency in your `Cargo.toml`:
```
[dependencies]
reducer = "3.0"
```and import it in your `lib.rs`:
```
use reducer::*;
```The full API documentation is available on [docs.rs][docs.home]
## Examples
The [examples] folder contains the implementation of a simple Todo List app using Reducer
and [egui].```
> cargo run --release --example egui
```## Contribution
Reducer is an open source project and you're very welcome to contribute to this project by
opening [issues] and/or [pull requests][pulls], see [CONTRIBUTING][CONTRIBUTING] for general
guidelines.## License
Reducer is distributed under the terms of the MIT license, see [LICENSE] for details.
[crates.io]: https://crates.io/crates/reducer
[docs.home]: https://docs.rs/reducer
[docs.badge]: https://docs.rs/reducer/badge.svg[codecov.home]: https://codecov.io/gh/brunocodutra/reducer
[codecov.badge]: https://codecov.io/gh/brunocodutra/reducer/branch/master/graph/badge.svg[egui]: https://crates.io/crates/egui
[issues]: https://github.com/brunocodutra/reducer/issues
[pulls]: https://github.com/brunocodutra/reducer/pulls
[examples]: https://github.com/brunocodutra/reducer/tree/master/examples[LICENSE]: https://github.com/brunocodutra/reducer/blob/master/LICENSE
[CONTRIBUTING]: https://github.com/brunocodutra/reducer/blob/master/CONTRIBUTING.md