{
    "name": "monochrome",
    "type": "module",
    "version": "2.5.1",
    "description": "[<img src=\"https://github.com/monochrome-music/monochrome/blob/main/assets/512.png?raw=true\" alt=\"Monochrome Logo\">](https://monochrome.tf)",
    "scripts": {
        "dev": "vite",
        "test": "vitest run --config=vite.config.ts",
        "test:headless": "HEADLESS=true vitest run --config=vite.config.ts",
        "test:watch": "vitest --config=vite.config.ts",
        "test:watch:headless": "HEADLESS=true vitest --config=vite.config.ts",
        "install:playwright": "playwright install chromium",
        "build": "vite build && vite-bundle-visualizer -o dist/assets/bundle-stats.html --open false",
        "postbuild": "node -e \"const fs = require('fs'); const path = require('path'); const src = 'extensions'; const dest = path.join('dist', 'Monochrome', 'extensions'); if (fs.existsSync(src)) { fs.mkdirSync(dest, { recursive: true }); fs.cpSync(src, dest, { recursive: true }); console.log('Extensions manually copied to ' + dest); }\"",
        "preview": "vite preview",
        "lint:js": "eslint .",
        "lint:css": "stylelint \"**/*.css\"",
        "lint:html": "htmlhint \"**/*.html\" --ignore=\"dist/**,legacy/**,node_modules/**\"",
        "lint": "bun run lint:js && bun run lint:css && bun run lint:html",
        "format": "prettier --write .",
        "lhci": "lhci",
        "lhci:autorun": "npm run build && lhci autorun"
    },
    "repository": {
        "type": "git",
        "url": "git+https://github.com/monochrome-music/monochrome.git"
    },
    "keywords": [
        "music"
    ],
    "author": "",
    "license": "Apache-2.0",
    "bugs": {
        "url": "https://github.com/monochrome-music/monochrome/issues"
    },
    "homepage": "https://github.com/monochrome-music/monochrome#readme",
    "devDependencies": {
        "@capacitor/assets": "^3.0.5",
        "@capacitor/cli": "^8.2.0",
        "@lhci/cli": "^0.14.0",
        "@testing-library/dom": "^10.4.1",
        "@types/node": "^25.3.5",
        "@vitest/browser-playwright": "^4.1.2",
        "eslint": "^9.39.3",
        "eslint-config-prettier": "^10.1.8",
        "formidable": "^3.5.4",
        "globals": "^17.4.0",
        "htmlhint": "^1.9.2",
        "miniflare": "^4.20260301.1",
        "playwright": "^1.58.2",
        "prettier": "^3.8.1",
        "stylelint": "^17.6.0",
        "stylelint-config-standard": "^39.0.1",
        "stylelint-config-standard-scss": "^16.0.0",
        "terser": "^5.46.1",
        "typescript": "^5.9.3",
        "vite": "^7.3.1",
        "vite-bundle-visualizer": "^1.2.1",
        "vite-plugin-purgecss": "^0.2.13",
        "vite-plugin-pwa": "^1.2.0"
    },
    "overrides": {
        "sourcemap-codec": "^1.4.14",
        "source-map": "^0.7.4",
        "serialize-javascript": "^7.0.3"
    },
    "dependencies": {
        "@capacitor/android": "^8.2.0",
        "@capacitor/app": "^8.0.1",
        "@capacitor/core": "^8.2.0",
        "@capacitor/haptics": "^8.0.1",
        "@capacitor/ios": "^8.2.0",
        "@capgo/capacitor-media-session": "^8.0.19",
        "@dantheman827/taglib-ts": "^0.1.5",
        "@ffmpeg/core": "^0.12.10",
        "@ffmpeg/ffmpeg": "^0.12.15",
        "@ffmpeg/util": "^0.12.2",
        "@kawarp/core": "^1.1.1",
        "@svta/common-media-library": "^0.18.1",
        "@types/wicg-file-system-access": "^2023.10.7",
        "@typescript-eslint/eslint-plugin": "^8.57.2",
        "@uimaxbai/am-lyrics": "^1.2.9",
        "@vitest/web-worker": "^4.1.2",
        "appwrite": "^23.0.0",
        "butterchurn": "^2.6.7",
        "butterchurn-presets": "^2.4.7",
        "client-zip": "^2.5.0",
        "cookie-session": "^2.1.1",
        "eventemitter3": "^5.0.4",
        "events": "^3.3.0",
        "fuse.js": "^7.1.0",
        "hls.js": "^1.6.15",
        "jose": "^6.2.0",
        "lucide-static": "^0.577.0",
        "mime": "^4.1.0",
        "npm": "^11.11.1",
        "pocketbase": "^0.26.8",
        "shaka-player": "^5.0.7",
        "simple-icons": "^16.12.0",
        "svgo": "^4.0.1",
        "typescript-eslint": "^8.57.2",
        "url-toolkit": "^2.2.5",
        "uuid": "^13.0.0",
        "vitest": "^4.1.2"
    }
}
