Home

Awesome

Build Status

brisk-reconciler

An easy way to model any tree-shaped state with simple stateful functions

Definitions:

Why?

We want to provide expressive and powerful abstractions to build and update trees of dynamic data. We built it with UIs in mind but this library is generally applicable.

We encourage you to experiment with this abstraction for different types of outputs. Thanks to OutputTree-agnostic Hooks (the mechanism which makes functions stateful), different types of outputs can use the same internal logic for updates or side effects.

One example of this is Brisk and Revery, where we have two vastly different approaches to building UIs. However, thanks to the shared layer, we envision that it'll be very simple to use the two at the same time.

We are building it in Reason. It's a very fast, scalable, and extremely expressive language with an amazing FFI. It has an incredibly powerful type system. Reason is a bridge between the world of mainstream programming and great ideas born in academia. It is an alternative syntax to OCaml so you can use (or even convert between) the two at the same time.

Projects which use brisk-reconciler

Examples

Contributing

Install esy

npm install -g esy

Installation using opam

We currently don't have an opam workflow ready. We're open to contributions!

Development workflow

Take a look at our issues if you'd like to get an idea where to start.

Community

Join us on reason native ui discord server here.

License

This project is provided under the MIT License.