This template allows you to quickly start a web extension containing:
- Boilerplate for
manifest.json
andbackground.js
files, and foricons
/popup
folders - Vue
- Vue-router (configurable)
- Vuex (configurable)
- Axios (configurable)
- Webpack 4
- Babel with preset-env
- ESLint (configurable)
- Prettier (configurable)
- A git precommit hook for running Prettier by using pretty-quick or precise-commits (configurable)
- CSS extraction, with mini-css-extract-plugin
- Compliable with the Content Security Policy of Chrome and Firefox web stores (some usages
eval
are removed) - A script to package your extension into a
.zip
file
$ vue init kocal/vue-web-extension my-extension
$ cd my-extension
$ npm install
$ npm run build
Build the extension into dist
folder for production.
Build the extension into dist
folder for development.
Watch for modifications then run npm run build
.
Watch for modifications then run npm run build:dev
.
It also enable Hot Module Reloading, thanks to webpack-chrome-extension-reloader plugin.
Build a zip file following this format <name>-v<version>.zip
, by reading name
and version
from manifest.json
file.
Zip file is located in dist-zip
folder.