Dear all!
I would like to introduce my recent work: Halogen Helix, a lightweight global state management library for Halogen app.
At the time of writing, there already exists a great library sharing the same purpose: halogen-store, so what is the point of adding one?
Indeed Helix shares the fundamental concepts with halogen-store, but to be sure, it differs in several points:
-
Helix is hook-first
The Helix store can be accessed only in hook-style components. It is not impossible to connect non-hook style component to the Helix store, but to do that, you need to do some low level stuff. -
Simple interface
With halogen-store’suseSelector
, it is also possible to access the store inside hook-style components, but the state value returned by theuseSelector
hook is always wrapped inMaybe
context. With Helix providing functionality, the state value does not have additionalMaybe
. -
More granular structuring of State type
Withhalogen-store
, you define a single, sometimes large, store; with Helix, you can create as many stores as you need, leading more finely structured store definition.
For more information, please refer to the README. I hope you feel like to trying it out.
Any feedback would be appreciated!