Opens a welcome page in a new tab when the extension loads.
npx extension@latest create my-special-folders-pages --template special-folders-pages
cd my-special-folders-pages
npm install
npm run dev!Powered by Extension.js
Opens a welcome page in a new tab when the extension loads.
What you'll see: A welcome page that opens on install / startup, served from pages/.
How it works: Files inside pages/ are treated as auto-discovered entrypoints , with no manifest.json wiring required. The background script opens one of them on install / startup.
Demonstrates Extension.js's pages/ convention: every HTML file inside the project-root pages/ directory becomes an entrypoint without manifest wiring. The background script opens pages/welcome.html on install / startup.
npx extension@latest create my-special-folders-pages --template special-folders-pages
cd my-special-folders-pages
npm install
npm run devA fresh browser window opens with the extension already loaded.
.
├── src/
│ ├── images/
│ │ ├── icon.png
│ │ └── javascript.png
│ ├── sandbox/
│ │ ├── index.html
│ │ ├── scripts.js
│ │ └── styles.css
│ ├── background.js
│ └── manifest.json
└── pages/
├── custom.html
├── main.html
├── main.js
└── welcome.htmlCloned this repo instead? The examples ship without npm scripts, so run Extension.js directly from the example directory. Run npm install first when the example declares dependencies.
Run the extension in development mode. Target a browser with --browser:
npx extension@latest dev . # Chromium (default)
npx extension@latest dev . --browser=chrome
npx extension@latest dev . --browser=edge
npx extension@latest dev . --browser=firefoxBuild for production:
npx extension@latest build . # Chromium (default)
npx extension@latest build . --browser=firefox
npx extension@latest build . --browser=edgePreview the production build with the bundled browser:
npx extension@latest preview .This template ships an end-to-end check (template.spec.ts) validated by the examples-repo CI on every commit.