Skip to content

easazade/crystalline

Repository files navigation

Crystalline

create a doc for scenarios and use cases added in example

define crystal-clear state objects across all state management libraries.

TODO: add badges including coverage badge. checkout faker_x TODO: refer to built in events as semantic events as they are semantics. create a table for all semantic events

State definition library that makes your states, reflective and crystally clear, no matter what state management library you use.

Checkout actual use-cases in code where crystalline saves you

Why use this?

Quick example

Everything is data

Different Data types

Use with all state management libraries

Easy to test

the root cause of a lot of unclean unreadable code is bad defined state. a bad defined state makes developers to move some of the state inside ui layer inside repositories even and in simple word make it scattered in many different places in app. this in turn causes the logic to manipulate these states be scattered a cross the application as well. when you have logics scattered across different layers and components it is much harder to understand the logic or even the business logic of the app.

Makes loading parts of the ui in parallel much easier. if a page shows a lot of different items like for example homepage of a shop application we can load the differently and show each when it is loading. this is very ideal when we are using shimmers for each of those parts instead of showing a loader for the entire page.