In the GObject model, it is possible to listen for and emit signals. Properties are named object members that emit a signal when modified. When a user interface element modifies an internal object variable, it is possible to listen for this, and immediately trigger an application state change.
We use this to convert the GObject property to a Wyrd property, and write its value to a resource. Conversely, we use Wyrd’s callbacks of a similar purpose to update GObject properties.
In this way, we create a bridge between the user interface and application state, and the shared vessel resource backing the Wyrd properties. When the resource gets synchronized, so does the application state.
The SDK is simple, but demonstrates the principle well. Future iterations must necessarily include more of the Interpeer stack.