Find a file
2023-08-14 14:00:41 -04:00
.gitignore ignore that 2023-07-28 07:59:57 -04:00
entrypoints.ts bunch of tweaks to get TS working 2023-07-28 07:48:01 -04:00
index.ts misc cleanup before i sleep 2023-07-28 08:29:53 -04:00
package-lock.json add @types/node to dependencies 2023-08-14 14:00:41 -04:00
package.json add @types/node to dependencies 2023-08-14 14:00:41 -04:00
README.md misc cleanup before i sleep 2023-07-28 08:29:53 -04:00
rollup.config.js bunch of tweaks to get TS working 2023-07-28 07:48:01 -04:00
tsconfig.json bunch of tweaks to get TS working 2023-07-28 07:48:01 -04:00

rollup-build-webext-config

Simplify Rollup configuration for browser extensions by pulling script entry points and other asset paths straight from your manifest.json. Recognizes manifest versions 2 and 3.

Usage

Targeting a single platform

// rollup.config.js
import {buildConfig} from 'rollup-build-webext-config';

import {nodeResolve} from '@rollup/plugin-node-resolve';
import commonjs from '@rollup/plugin-commonjs';

export default buildConfig({
	manifest: 'path/to/your/manifest.json',
	outDir: 'build',
	sourcemap: 'inline',
	plugins: [
		nodeResolve(),
		commonjs(),
	],
});

Targeting multiple platforms

// rollup.config.js
import {buildConfig} from 'rollup-build-webext-config';

export default ['chromium', 'firefox'].flatMap(platform => buildConfig({
	manifest: `manifest-${platform}.json`,
	outDir: `build/${platform}`,
	// ...
}));