Replaces your new tab page with a small React app you can navigate across routes.
npx extension@latest create my-new-react-router --template new-react-router
cd my-new-react-router
npm install
npm run dev!Powered by Extension.js
Replaces your new tab page with a small React app you can navigate across routes.
What you'll see: A custom new-tab page replacing the browser default.
How it works: The manifest overrides the new-tab page and loads a React + TypeScript entry bundled from src/newtab/.
A new-tab page driven by React Router. Useful for extension UIs that span multiple in-app routes.
npx extension@latest create my-new-react-router --template new-react-router
cd my-new-react-router
npm install
npm run devA fresh browser window opens with the extension already loaded.
src/
├── images/
│ └── icon.png
├── newtab/
│ ├── index.html
│ ├── NewTabApp.tsx
│ ├── scripts.tsx
│ └── styles.css
├── background.js
└── manifest.jsonCloned 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.