Overview
This chapter is the third category, following "Optimization" and "Testing."\
Sizing and Scoping a Store
First, let's look at this example:
Store-to-Store Communication
Stores in geajs are exported as singletons — a single, shared instance per module, not a class the caller instantiates. This is the key fact that shapes how Stores should talk to each other: because every consumer that imports a given Store module gets the exact same instance, there is never any ambiguity about "which instance am I talking to." Stores can, and are meant to, import each other directly.
Proxy and Raw Instance Identity
Every Store (and by extension every Component, which extends Store) exists at runtime as two distinct objects: a raw instance, and a reactive Proxy wrapping it. You can see evidence of this directly on any instance — inspect one in a debugger and you'll find a Symbol(gea.store.rootProxy) property pointing from the raw object back to its Proxy counterpart.