Vue.js Webpack Chrome Extension Template
Template for quick creation of Chrome extension on Vuejs hot reloading when developing.
Installation:
This boilerplate was built as a template for vue-cli and includes options to customize your final scaffolded app.
# install vue-cli
$ npm install -g vue-cli
# create a new project using the template
$ vue init ALiangLiang/vue-webpack-chrome-extension-template my-project
# install dependencies and go!
$ cd my-project
$ npm install # or yarn
$ npm run dev # or yarn dev
Structure
.
โโโ build # core scripts
โย ย โโโ page.ejs # html page boilerplate of background, options, etc.
โย ย โโโ tools.js # util scripts
โย ย โโโ webpack.base.js # base webpack configure file
โย ย โโโ webpack.dev.js # configure file on developing, would merge into base
โย ย โโโ webpack.prod.js # configure file on build, would merge into base
โโโ plugins # special webpack plugins for Chrome extension
โย ย โโโ GenerateLocaleJsonPlugin.js # Transform locale message."js" to "json"
โย ย โโโ GenerateManifestJsonPlugin.js # Transform your manifest."js" to "json"
โโโ dist # your runtime code. generate by program.
โโโ src # your source code
โย ย โโโ _locales # Implement internationalization across your whole extension (https://developer.chrome.com/extensions/i18n)
โย ย โโโ background # Background work of your extension (https://developer.chrome.com/extensions/background_pages)
โย ย โโโ content # Run in the context of web pages (https://developer.chrome.com/extensions/content_scripts)
โย ย โโโ devtools # It can add new UI panels and sidebars, interact with the inspected page, get information about network requests, and more. (https://developer.chrome.com/extensions/devtools)
โย ย โโโ ext # Shared scripts
โย ย โโโ options # To allow users to customize the behavior of your extension, you may wish to provide an options page. (https://developer.chrome.com/extensions/options)
โย ย โโโ popup # The page (window) that will be displayed when the icon is clicked
โย ย โโโ tab # Your application will work in a separate tab
โย ย โโโ manifest.js # Descriptions of the application, its rights and possibilities (https://developer.chrome.com/extensions/manifest)
โโโ static # static assets, would copy into dist directly.
โย ย โโโ icons # icons
โโโ extension.zip # extension package. used to upload to web store.
โโโ package.json # build scripts and dependencies
โโโ package-lock.json # npm lockfile, should be commit into git
โโโ yarn.lock # yarn lockfile, should be commit into git
Pre-install
- vue
- vue-router
- lodash - Javascript util library
- element-ui - Style Framework for Vue.js
License
MIT