Chrome Extension generator
Maintainer: Jimmy Moon
Chrome Extension generator that creates everything you need to get started with extension development. You can choose Browser UI(Browser,Page Action, Omnibox) type and select into permissions what you need.
Getting Started
- First make a new directory, and
cd
into it: mkdir my-new-chrome-extension && cd $_ - Install the generator:
npm install -g generator-chrome-extension
- Run:
yo chrome-extension
, optionally passing an extension name: yo chrome-extension [extension-name]
Need more information about Chrome Extension? Please visit Google Chrome Extension Development
Generators
Available generators:
App
Sets up a new Chrome Extension, generating all the boilerplate you need to get started.
yo chrome-extension
Test Chrome Extension
To test, go to: chrome://extensions, enable Developer mode and load app as an unpacked extension.
ES2015
ES2015 is default option in this generator that means you can use es2015 now for developing the Chrome extensions. However, at the moment, you need to execute babel
task of grunt to compile to test and run the extension on Chrome, because ES2015 is not full functionality on Chrome as yet. a source written by es2015 is located at scripts.babel
and runnable sources are will be created at script
after compiling by grunt
grunt babel
If you would like to have a continuous compile by babel you can use watch
task
grunt watch
Grunt tasks
Debug
Debug task helps reduce your effors during development extensions. If the task detects your changes of source files, Livereload(chromereload.js) reloads your extension. If you would like to know more about Livereload and preview of Yeoman? Please see Getting started with Yeoman and generator-webapp for your understanding.
grunt debug
Build
By default, generators compress the file that was created by building a js/css/html/resource file. You can distribute the compressed file using the Chrome Developer Dashboard to publish to the Chrome Web Store.
Run this command to build your Chrome Extension project.
grunt build
Options
-
--no-babel
If you wouldn't use Babel ES2015 transpiler.
-
--skip-install
Skips the automatic execution of bower
and npm
after
scaffolding has finished.
-
--test-framework=[framework]
Defaults to mocha
. Can be switched for
another supported testing framework like jasmine
.
-
--compass
Add support for Compass.
WARN, Compiled files that generated by compass will be remained if your Chrome App is running on Chrome App container (with grunt debug
). You should remove or ignore that files if you don't want to commit to repo.
Contribute
See the contributing docs
License
BSD license