Confirmed users
51
edits
m (→Render store) |
m (→Front-End) |
||
Line 197: | Line 197: | ||
[[File:Gaia Architecture Proposal FrontEnd Overview.png]] | [[File:Gaia Architecture Proposal FrontEnd Overview.png]] | ||
The frond-end is the part responsible for perceived performance.<br /> | '''The frond-end is the part responsible for perceived performance.'''<br /> | ||
As mentioned in the introduction, every view is an independent capsule, living in its own compartment. | As mentioned in the introduction, every view is an independent capsule, living in its own compartment. | ||
''Note: | ''Note: A fairly common mistake is to try to compare this high-level decoupling with existing framework. Those are solving orthogonal problems, and a direct comparison does not really make sense. <br /> The main idea here is to expose some of the application logic to the web browser in order to benefits from the browser internal machinery as well as being able to get low level monitoring for the exposed part of the application. <br /> This model is not about using x, y or z. It is technology agnostic and uses very basic primitives of the Web. Various technologies can be put on top of that (module UI, React, Web Components, etc.) and can actually be benchmarked with real data from users using Telemetry. | ||
'' | '' | ||
Technically the compartment split is implemented using a separated <iframe> for each view. Those views are wrapped into a container responsible for the application navigation as well as transitions.'' | Technically the compartment split is implemented using a separated <iframe> for each view. Those views are wrapped into a container responsible for the application navigation as well as transitions.'' | ||
''Note: | ''Note: There seems to be a common negative feeling about <iframe>s. Please note that <iframe>s are just a tool to achieve this compartment isolation which results into exposing the app internals to the Web Browser. So are <iframe>s the future of the Web? Probably not, but a high level encapsulation is definitively needed, and the only thing that provide this level of encapsulation at the moment is an <iframe>.'' | ||
Features: | Features: |