/ package.json
package.json
 1  {
 2    "name": "browser-eq-v2",
 3    "displayName": "Browser EQ v2",
 4    "version": "2.0.0",
 5    "private": true,
 6    "packageManager": "pnpm@9.7.1",
 7    "description": "Browser EQ v2 - Hear Better",
 8    "scripts": {
 9      "dev": "npm run clear && cross-env NODE_ENV=development run-p dev:*",
10      "dev-firefox": "npm run clear && cross-env NODE_ENV=development EXTENSION=firefox run-p dev:*",
11      "dev:prepare": "esno scripts/prepare.ts",
12      "dev:background": "npm run build:background -- --mode development",
13      "dev:web": "vite",
14      "dev:js": "npm run build:js -- --mode development",
15      "build": "cross-env NODE_ENV=production run-s clear build:web build:prepare build:background build:js",
16      "build:prepare": "esno scripts/prepare.ts",
17      "build:background": "vite build --config vite.config.background.mts",
18      "build:web": "vite build",
19      "build:js": "vite build --config vite.config.content.mts",
20      "pack": "cross-env NODE_ENV=production run-p pack:*",
21      "pack:zip": "rimraf extension.zip && jszip-cli add extension/* -o ./extension.zip",
22      "pack:crx": "crx pack extension -o ./extension.crx",
23      "pack:xpi": "cross-env WEB_EXT_ARTIFACTS_DIR=./ web-ext build --source-dir ./extension --filename extension.xpi --overwrite-dest",
24      "start:chromium": "web-ext run --source-dir ./extension --target=chromium",
25      "start:firefox": "web-ext run --source-dir ./extension --target=firefox-desktop",
26      "clear": "rimraf --glob extension/dist extension/manifest.json extension.*",
27      "lint": "eslint --cache .",
28      "test": "vitest test",
29      "test:e2e": "playwright test",
30      "typecheck": "tsc --noEmit"
31    },
32    "dependencies": {
33      "@types/chrome": "^0.0.293",
34      "@types/webaudioapi": "^0.0.27",
35      "vuetify": "^3.7.6"
36    },
37    "devDependencies": {
38      "@ffflorian/jszip-cli": "^3.7.1",
39      "@iconify/json": "^2.2.239",
40      "@mdi/font": "^7.4.47",
41      "@playwright/test": "^1.46.1",
42      "@types/fs-extra": "^11.0.4",
43      "@types/node": "^22.5.0",
44      "@types/webextension-polyfill": "^0.12.0",
45      "@typescript-eslint/eslint-plugin": "^8.2.0",
46      "@vitejs/plugin-vue": "^5.1.2",
47      "@vue/compiler-sfc": "^3.4.38",
48      "@vue/test-utils": "^2.4.6",
49      "@vueuse/core": "^11.0.1",
50      "chokidar": "^3.6.0",
51      "cross-env": "^7.0.3",
52      "crx": "^5.0.1",
53      "eslint": "^9.9.0",
54      "esno": "^4.7.0",
55      "fs-extra": "^11.2.0",
56      "jsdom": "^24.1.1",
57      "kolorist": "^1.8.0",
58      "lint-staged": "^15.2.9",
59      "npm-run-all": "^4.1.5",
60      "rimraf": "^6.0.1",
61      "simple-git-hooks": "^2.11.1",
62      "typescript": "^5.5.4",
63      "unplugin-auto-import": "^0.18.2",
64      "unplugin-icons": "^0.19.2",
65      "unplugin-vue-components": "^0.27.4",
66      "vite": "^5.4.2",
67      "vitest": "^2.0.5",
68      "vue": "^3.4.38",
69      "vue-demi": "^0.14.10",
70      "web-ext": "^8.2.0",
71      "webext-bridge": "^6.0.1",
72      "webextension-polyfill": "^0.12.0"
73    }
74  }