3 ms·
I've been using Stator[0] which uses a global JavaScript object with get(), set(), and connectComponentState() methods that selectively call setState() on compo
by grassfedcode 9y ago
I've been using Stator[0] which uses a global JavaScript object with get(), set(), and connectComponentState() methods that selectively call setState() on components that connect to the global state.
It has worked really well for me on a 5k+ LOC frontend to gdb called gdbgui[1]. It's performant, but perhaps more importantly, it matches my mental model of how the code works (essentially a global setState, can log changes to the console, do type checking, etc.) so I can work more efficiently. Stator was originally part of gdbgui, but since the pattern worked so well for me I extracted it into its own library.
[0] https://github.com/cs01/stator https://github.com/cs01/stator
[1] https://github.com/cs01/gdbgui https://github.com/cs01/gdbgui
- dvddgld 9y agoI like this approach, going to try it out! Thanks for sharing and for releasing good open source software (gdbgui looks great)!