hanjukim / extensionizer

A JS module for writing cross-browser extensions

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Extensionizer

A module for writing cross-browser extensions

Most browsers (other than Safari) have implemented the WebExtensions API for writing browser extensions.

Unfortunately, they've often hidden that common API under a variety of differently named global objects.

When you import extensionizer, it grabs those WebExtension APIs from wherever they're hiding, and hangs them all on a singleton object that it returns to you.

Just use extensionizer instead of the browser specific extension prefixing.

Sample Usage

First install with npm install extensionizer.

const extension = require('extensionizer')

// Ever notice you can't use normal hyperlinks in an extension?
// Now it's easy:
extension.tabs.create({url: 'mailto:help@metamask.io?subject=Feedback'})

const manifest = extension.runtime.getManifest()

For the full list of supported methods, refer to the MDN API documentation.

Running Tests

Run npm test after running npm install.

About

A JS module for writing cross-browser extensions

License:ISC License


Languages

Language:JavaScript 94.0%Language:Shell 6.0%