Index
# Views, rendering, and the reactive data model Source of truth: `src/js/elements/View.js` (`MMO.elements.View`) and `src/js/core/Template.js` (`MMO.core.Template`, its base class). `MMO.core.Map` (`src/js/core/Map.js`) is the underlying reactive data container — read that file directly for its exact API before relying on details not covered here. ## The three layers ``` MMO.core.Template – imperative DOM builder: open()/attr()/text()/html()/close(), no data binding ↑ extends MMO.elements.View – + binds a subtree to a MMO.core.Map path: get/set/watch/loop/test, sub-views ↑ used by CustomElement/CustomShadowElement – wires a View to a Web Component's lifecycle (see the custom-elements resource) ``` A `.jhs` file's compiled `render($view)` method is just a long chain of calls on a `View` (`$view` = `this.view` for a custom element) — everything in the **jhs-syntax** resource is sugar over this API. You can call the same methods yourself from a `