Confirmed users
230
edits
Line 70: | Line 70: | ||
But front-end and back-end may have custom deadlines to work on this feature, as long the deadline if not targeting after the shared deadline. | But front-end and back-end may have custom deadlines to work on this feature, as long the deadline if not targeting after the shared deadline. | ||
= Step 1: | = Step 1: External Services = | ||
While applications will work offline, similarly to the current packaged model, applications may benefits from accessing remote servers. | |||
Those remote servers will serve different purposes, such as distributing applications updates, synchronizing user datas and getting telemetry reports from real users. | |||
[[File:Gaia Architecture Proposal High Level Overview.png|none]] | |||
Those servers should be set up by collaborating with different teams, like the Content Services team for example. | |||
== Service Worker == | |||
Applications are now hosted with an offline copy of the source code onto the device. A remote server will distribute small updates to the clients. | |||
Each app may distribute an update when a change is ready and validated by QA, and it is not dependent of a specific Gecko version which is not available on the target. | |||
== Telemetry == | |||
In order to get real reports and application usage, a Telemetry server will be set up. Telemetry reports may contains various type of metrics, keyed by origin, such as the startup time for a specific view, the average number of contacts, or even a navigation map for a particular app. | |||
Those datas may be used for decision making, assuming the correct set of reports is available to the relevant people. | |||
== Data Sync == | |||
User datas are now synchronized over a remote server. While it can be seen as a backup mechanism, it is mostly a mechanism to enable multiple UIs to access the same set of datas. | |||
A client may then be a desktop application, or a mobile application. | |||
= Step 2: Mirror functional teams into the codebase = | = Step 2: Mirror functional teams into the codebase = |