fx-sync

Interact with Firefox Sync Servers

node-fx-sync

Create a new Firefox Account in Firefox 29 or newer and you'll be able to use this module to download your Sync data. Fancy!

npm install fx-sync
var FxSync = require('fx-sync');
 
var sync = new FxSync({ email: 'me@example.com', password: 'hunter2' });
 
// Download and print my super useful bookmarks
 
sync.fetch('bookmarks')
  .then(function(results) {
    results
      .filter(filterBookmark)
      .map(mapBookmark)
      .forEach(renderBookmark);
  })
  .done();
 
function filterBookmark(bookmark) {
  return bookmark.type === 'bookmark';
}
 
function mapBookmark(bookmark) {
  return {
    title: bookmark.title,
    url: bookmark.bmkUri,
    description: bookmark.description || '',
    tags: bookmark.tags
  };
}
 
function renderBookmark(bookmark) {
  console.log(bookmark);
}

Creates a new instance.

E.g. sync.fetch('tabs').then(function (result) { ... });

Fetch sync'ed data from collection. Useful collections include: passwords, tabs, forms, prefs, bookmarks, addons, and history. For information on options, look here.

E.g. sync.fetchIDs('history', { limit: 50 }).then(function (result) { ... });

Fetch the IDs of objects in collection. You can use this to build more complicated queries without downloading the full contents of each object in the query. For information on options, look here.

Apache License 2.0