Component
The Duck Component.
Recipe
function Component(data) {
  let elem;

  function construct() {}

  function update() {}

  function enter() {}
  function exit() {}

  function destroy() {}

  construct();
  return { elem, data, update, enter, exit, destroy };
}
JavaScript
Walkthrough
See core.