Firefox OS Data Sync: Difference between revisions

→‎Sub-product ideas: Rename to 'Projects' and update from latest roadmap discussions
(→‎Sub-product ideas: Rename to 'Projects' and update from latest roadmap discussions)
Line 71: Line 71:
Everything that fits on an indexedDB like database. Including in-app specific settings or things like SMS, call history, alarms, etc.
Everything that fits on an indexedDB like database. Including in-app specific settings or things like SMS, call history, alarms, etc.


== Sub-product ideas ==
== Projects ==
We started exploring three angles in proof-of-concept stage.
The Firefox OS Data Sync team will be working on several projects during 2016.


=== Syncto: passwords, bookmarks, etc. ===
=== Firefox Sync ===
Given that Firefox Sync already allows users to sync certain types of data between their various instances of Firefox (be they Desktop, Android, or iOS), it makes sense to add FxOS to the existing FxSync product. See https://wiki.mozilla.org/Firefox_OS/Syncto.
* Stage 1 (completed): Read-only history and bookmarks sync on the Smart TV.
* Stage 2 (2015-Q4): Read-only history sync on the phone.
* Stage 3 (2015-Q4/2016-Q1): Read-write history sync and passwords sync on the phone.
* Stage 4 (2016): Sync the [https://docs.services.mozilla.com/sync/objectformats.html rest of the collections] as and when the phone starts supporting these features.


=== Cloud Storage: photos, songs, etc. ===
See https://wiki.mozilla.org/Firefox_OS/Syncto.
FxOS already allows users to store and view media files using storage that is connected to the device (for instance, an SD-card). Mounting remote cloud storage space (for instance the user's Dropbox or ownCloud account) as a (cached) virtual storage device makes it possible to browse the files on there 'as if' they were on a local storage device.


=== Kinto.js: valuable user data in general ===
=== Media Files Sync ===
A sync client that can run in any browser. It can be used in FxOS (system) apps that store any kind of user data, to sync that data to a server that implements Kinto's cross-origin http API.
Planned for 2016. FxOS already allows users to store and view media files using storage that is connected to the device (for instance, an SD-card). Mounting remote cloud storage space (for instance the user's Dropbox or ownCloud account) as a (cached) virtual storage device makes it possible to browse the files on there 'as if' they were on a local storage device.
 
=== Contacts Sync ===
See [https://groups.google.com/forum/#!topic/mozilla.dev.fxos.sync/ctlFp_2_nlA this mailing list thread] for work going on during 2015-Q4. During 2016, we would like to improve the existing sync (currently more a one-shot import) with Gmail and Outlook contacts, and expand it to allow sync with any CardDAV server.
 
=== Backup / Restore ===
Planned for 2016. It should be possible to take snapshots of the entire data state of a Firefox OS device, and later restore that snapshot onto the same or a new device. During Mozlando we will discuss whether this can be a pure peer-to-peer architecture (e.g. using RTCPeerConnection), or whether it will be necessary to store these snapshots on a server where the user has storage space. See https://wiki.mozilla.org/Firefox_OS_Cloud_Backup_Restore for an extensive list of product requirements.
 
=== Data Sync for the Web ===
Apart from launching specific sync features on upcoming Firefox OS versions, we will aim to discuss, build, and standardize the general architecture of data sync technologies that are currently missing on the web platform, but are needed to make data sync on the (mobile) web as easy to use as the data sync features of proprietary single-vendor platforms.


= The solution(s) =
= The solution(s) =