Home

Awesome

then-chrome

Build Status Coverage Status npm version

Promise-based chrome api.

usage

var thenChrome = require('then-chrome');

// get tabs list
thenChrome.tabs.query({currentWindow: true})
   .then(console.log); // tabs list

// get all cookies by name   
thenChrome.cookies.getAll({name: 'cookieName'})
   .then(console.log); // cookie list
   
// detect language by tab
thenChrome.tabs.detectLanguage(10)
   .then(console.log); // en
   .catch(console.warn); // catch chrome.runtime.lastError value

Sync methods are wrapped too

var thenChrome = require('then-chrome');

thenChrome.i18n.getMessage('title')
   .then(console.log); // 'extension title'

There is native Promise inside then-chrome by default, but you can use every Thenable lib, compatible with Promises/A+ standart.

var Q = require('q');
var BlueBird = require('bluebird');
var create = require('then-chrome/out/api');

var thenChromeQ = create(Q.Promise); // then-chrome with Q promise inside
var thenChromeBB = create(BlueBird); // then-chrome with bluebird promise inside

install

npm install then-chrome

or

git clone https://github.com/acvetkov/then-chrome.git
cd then-chrome
npm install

build

npm run build

test

npm test

Supported methods

  1. chrome.alarms
  2. chrome.bookmarks
  3. chrome.browserAction
  4. chrome.browsingData
  5. chrome.commands
  6. chrome.contextMenus
  7. chrome.cookies
  8. chrome.debugger
  9. chrome.desktopCapture
  10. chrome.devtools.inspectedWindow
  11. chrome.devtools.network
  12. chrome.devtools.panels
  13. chrome.dial (undocumented API for communication with DIAL-capable devices)
  14. chrome.downloads
  15. chrome.extension
  16. chrome.fontSettings
  17. chrome.gcm
  18. chrome.history
  19. chrome.i18n
  20. chrome.identity
  21. chrome.idle
  22. chrome.instanceID
  23. chrome.management
  24. chrome.notifications
  25. chrome.omnibox
  26. chrome.pageAction
  27. chrome.pageCapture
  28. chrome.permissions
  29. chrome.privacy
  30. chrome.proxy
  31. chrome.runtime
  32. chrome.sessions
  33. chrome.storage
  34. chrome.system.cpu
  35. chrome.system.memory
  36. chrome.system.storage
  37. chrome.tabCapture
  38. chrome.tabs
  39. chrome.topSites
  40. chrome.tts
  41. chrome.webNavigation
  42. chrome.webRequest
  43. chrome.windows

Useful resources

Awesome Browser Extensions And Apps - a curated list of awesome resources for building browser extensions and apps.