A foundation for creating browser extensions for Chrome, Opera & Firefox.
Now that Firefox supports WebExtensions, it has become a lot easier to build browser extensions/addons for multiple browsers without duplicating the codebase. This project serves as a sensible starting point to help you get started.
I have extracted this from the browser extensions that I built for my side-project, Email This.
Side note: Do check out Email This. It is a simpler alternative to bookmarking tools like Pocket, Readability & Instapaper. Email This will remove ads & distractions from an article and send you a nice email with just the text/images. No need to install any additional applications or login to another app just to access your bookmarks. The Chrome Extensions is available on the Chrome Web Store.
You can also set custom data variables based on the platform (different variable for Chrome, FF, Opera).
git clone https://github.com/EmailThis/extension-boilerplate.git
npm run build
Alternately, if you want to try out the sample extension, here are the download links. After you download it, unzip the file and load it in your browser using the steps mentioned below.
The following tasks can be used when you want to start developing the extension and want to enable live reload -
npm run chrome-watch
npm run opera-watch
npm run firefox-watch
npm run dist to create a zipped, production-ready extension for each browser. You can then upload that to the appstore.
This project is licensed under the MIT license.
If you have any questions or comments, please create a new issue. I’d be happy to hear your thoughts.
Bharani, Email This