HTTP/2 200
date: Sat, 19 Jul 2025 04:39:15 GMT
content-type: text/html
cf-ray: 9617889d0d7c755c-BLR
cf-cache-status: EXPIRED
cache-control: public, max-age=14400
last-modified: Sat, 19 Jul 2025 04:39:14 GMT
strict-transport-security: max-age=31536000; includeSubDomains; preload
vary: x-requested-with, x-spiferack, Accept-Encoding
content-security-policy: connect-src 'self' checkout.stripe.com https://checkout.stripe.com https://billing.stripe.com/session https://api.funcaptcha.com https://api.arkoselabs.com sentry.io api.github.com www.npmjs.com;default-src 'none';img-src * data: https://*.stripe.com;script-src 'self' data: 'unsafe-inline' https://checkout.stripe.com/checkout.js https://checkout.stripe.com https://js.stripe.com/v3 https://platform.twitter.com/widgets.js https://octocaptcha.com https://static-production.npmjs.com/;style-src 'self' 'unsafe-inline' https://fonts.googleapis.com https://static-production.npmjs.com/;frame-src checkout.stripe.com https://checkout.stripe.com https://js.stripe.com/ https://octocaptcha.com;font-src https://fonts.gstatic.com https://static-production.npmjs.com/ ;media-src https://player.vimeo.com https://fpdl.vimeocdn.com https://gcs-vimeo.akamaized.net https://vod-progressive.akamaized.net
npm-cost: 1
npm-remaining: 99
x-content-security-policy: connect-src 'self' checkout.stripe.com https://checkout.stripe.com https://billing.stripe.com/session https://api.funcaptcha.com https://api.arkoselabs.com sentry.io api.github.com www.npmjs.com;default-src 'none';img-src * data: https://*.stripe.com;script-src 'self' data: 'unsafe-inline' https://checkout.stripe.com/checkout.js https://checkout.stripe.com https://js.stripe.com/v3 https://platform.twitter.com/widgets.js https://octocaptcha.com https://static-production.npmjs.com/;style-src 'self' 'unsafe-inline' https://fonts.googleapis.com https://static-production.npmjs.com/;frame-src checkout.stripe.com https://checkout.stripe.com https://js.stripe.com/ https://octocaptcha.com;font-src https://fonts.gstatic.com https://static-production.npmjs.com/ ;media-src https://player.vimeo.com https://fpdl.vimeocdn.com https://gcs-vimeo.akamaized.net https://vod-progressive.akamaized.net
x-content-type-options: nosniff
x-frame-options: DENY
x-xss-protection: 1; mode=block
set-cookie: __cf_bm=LU8HK5gzKngcjnf3Bf.yVkUnZYxvHdKQje7YIkP4ZGk-1752899955-1.0.1.1-zblIRHKc4TCmpiuyeE3C55bzthPd6x3dsuc9SAww2OvLdhPPSwI338976mTTH_EAkgArmseWPFGR.v_BZ.fcMBosQB41h8qtZiJP9hYPr64; path=/; expires=Sat, 19-Jul-25 05:09:15 GMT; domain=.npmjs.com; HttpOnly; Secure; SameSite=None
set-cookie: __cfruid=c6b495b4f1c1b3b44df0bd4c3eb9fc8f673c896f-1752899955; path=/; domain=.npmjs.com; HttpOnly; Secure; SameSite=None
server: cloudflare
content-encoding: gzip
create-web-ext - npm
create-web-ext 1.0.0 • Public • Published 7 years ago
create-web-ext
create-web-ext
is a scaffolding tool for browser extensions. It takes input few parameters and outputs a complete boilerplate browser extension project. This folder will contain all the required folders and files to get started with the extension.
Install
$ npm install -g create-web-ext
You are all set, check
$ create-web-ext -v
create-web-ext version 1.0.0
Usage
$ create-web-ext
$ Addon name (My extension) myAddon
$ Description My addon will rock \o/
$ Version (0.0.1) 1.1.1
$ Include background script? (y/n) y
$ AddonInclude content script? (y/N) y
$ Include browser action? (y/N) y
$ Include page action? (y/N) y
$ Include addon options? (y/N) y
✨ Done.
This will generate a directory myAddon
with following structure
myAddon
├── background_script.js
├── browserAction
│ ├── index.html
│ ├── script.js
│ └── style.css
├── content_script.js
├── icons
│ └── icon.png
├── manifest.json
├── options
│ ├── index.html
│ ├── script.js
│ └── style.css
└── pageAction
├── index.html
├── script.js
└── style.css
Requirements
You need Node.js , 6.0.0 or higher
Install npm , 3.0.0 or higher is recommended
Optionally, you may like:
nvm , which helps manage node versions
You can now run it from any directory.
Package Sidebar Install Downloads Weekly Downloads