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.
useSelector, it is also possible to access the store inside hook-style components, but the state value returned by the
useSelectorhook is always wrapped in
Maybecontext. With Helix providing functionality, the state value does not have additional
More granular structuring of State type
halogen-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!