Firefox OS/Syncto
Syncto
Syncto is a layer to provide the Kinto API for Firefox Sync in order to integrate with Firefox OS
Why Syncto?
I am glad you've asked because this is a really relevant question.
Firefox OS needs to sync data (ie: Contacts, Images, Videos, Game level and preferences) with Firefox OS. Firefox OS will also need to share data between Firefox OS users (ie: Contacts groups)
If we need to sync data, we should consider using Firefox Sync that was made for that.
Why not sync Firefox OS specific data into sync ?
Firefox Sync is not a backup solution and it does not means to be one.
On a smartphone, when you loose your mobile, you want a backup on your new phone. Firefox Sync doesn't guarantee that your data will still be there when you start on your new phone.
This is the reason why we don't want to use Firefox Sync to sync new Firefox OS data into sync.
Kinto is a storage solution to sync and share data that integrates with Firefox Account. Firefox OS can use syncto to backup Firefox OS specific data.
How do I sync my browser data (in Firefox Sync) into Firefox OS
To start with it is important to note that Firefox Sync is not yet integrated into Firefox OS.
Also Firefox OS needs Firefox Sync for Forms, History, Password and later Bookmarks (they are no bookmarks yet in the Firefox OS browser)
We need some effort to intergrate a JavaScript client for Firefox Sync in the browser.
Problems
Today's Firefox Sync doesn't integrate with Firefox OS Oauth bearer tokens
In order to use Firefox Sync with Firefox OS we need to implement the Browser ID protocol inside Firefox OS in order to connect to sync.
They are no Javascript Client for Sync in Javascript yet
We need to build a client :
- for the Firefox Account BrowserID deprecated protocol
- for the Firefox Sync protocol (and talk to the token server, etc.)
Syncto
Syncto is a service that will add the Kinto protocol for Sync.
- There is already a client https://github.com/mozilla-services/cliquetis/ that empower synchronization between a server and an local IndexDB database
- Kinto already supports Firefox Account Bearer Tokens
- If we integrates a Kinto client on Firefox OS, we could benefit from it for other Firefox OS data synchronization needs.
- We don't need to integrates with the deprecated Browser ID protocol with the Firefox Sync / Token server protocol
To conclude
- The id behind Syncto is to build around the Kinto ecosystem.
- Concentrate the effort on building the Kinto.js library that will be used for other Firefox OS synchronization and sharing needs.
- Demonstrate with a production ready solution that the Kinto protocol can replace Firefox Sync needs and later provide a backup solution for Firefox Browser.
- Help growing the storage solution around Firefox Account
- Help growing the Firefox Account ecosystem and get rid of the old BrowserID protocol for Firefox Account in favour of the OAuth Bearer Token flow.