create-chrome-ext
Version:
Scaffolding your chrome extension, multiple boilerplates supported!
48 lines (45 loc) • 1.19 kB
text/typescript
import { defineManifest } from '@crxjs/vite-plugin'
import packageData from '../package.json'
//@ts-ignore
const isDev = process.env.NODE_ENV == 'development'
export default defineManifest({
name: `${packageData.displayName || packageData.name}${isDev ? ` ➡️ Dev` : ''}`,
description: packageData.description,
version: packageData.version,
manifest_version: 3,
icons: {
16: 'img/logo-16.png',
32: 'img/logo-32.png',
48: 'img/logo-48.png',
128: 'img/logo-128.png',
},
action: {
default_popup: 'popup.html',
default_icon: 'img/logo-48.png',
},
options_page: 'options.html',
devtools_page: 'devtools.html',
background: {
service_worker: 'src/background/index.ts',
type: 'module',
},
content_scripts: [
{
matches: ['http://*/*', 'https://*/*'],
js: ['src/contentScript/index.ts'],
},
],
side_panel: {
default_path: 'sidepanel.html',
},
web_accessible_resources: [
{
resources: ['img/logo-16.png', 'img/logo-32.png', 'img/logo-48.png', 'img/logo-128.png'],
matches: [],
},
],
permissions: ['sidePanel', 'storage'],
chrome_url_overrides: {
newtab: 'newtab.html',
},
})