{
    "name": "iplayarr",
    "version": "1.0.0",
    "main": "index.js",
    "scripts": {
        "install:both": "npm install && cd frontend && npm install",
        "build:backend": "tsc",
        "build:frontend": "cd frontend && npm run build",
        "build:both": "concurrently \"npm run build:backend\" \"npm run build:frontend\"",
        "serve:redis": "docker compose up -d",
        "serve:backend": "nodemon src/server.ts",
        "serve:frontend": "cd frontend && npm run serve",
        "start": "node -r tsconfig-paths/register dist/src/server.js",
        "dev": "cross-env DEBUG=true concurrently \"npm run serve:backend\" \"npm run serve:frontend\"",
        "test": "cross-env NODE_ENV=test jest --collectCoverageFrom 'src/**/*.{js,ts}'",
        "test:watch": "jest --watch",
        "lint": "eslint . --ext .ts",
        "lint:fix": "npm run lint -- --fix",
        "prettier": "prettier . --check",
        "prettier:fix": "npm run prettier -- --write"
    },
    "author": "",
    "license": "ISC",
    "description": "",
    "dependencies": {
        "@types/lunr": "^2.3.7",
        "axios": "^1.8.2",
        "bcrypt": "^6.0.0",
        "connect-redis": "^8.0.3",
        "cors": "^2.8.5",
        "dotenv": "^16.4.7",
        "ejs": "^3.1.10",
        "express": "^4.21.2",
        "express-session": "^1.18.2",
        "form-data": "^4.0.2",
        "handlebars": "^4.7.8",
        "ioredis": "^5.6.0",
        "jsdom": "^26.1.0",
        "lunr": "^2.3.9",
        "module-alias": "^2.2.3",
        "multer": "^1.4.5-lts.1",
        "node-cron": "^3.0.3",
        "openid-client": "^6.8.1",
        "p-limit": "^3.1.0",
        "romans": "^3.0.0",
        "socket.io": "^4.8.1",
        "uuid": "^11.0.5",
        "vue-router": "^4.5.0",
        "winston": "^3.18.3",
        "winston-daily-rotate-file": "^5.0.0",
        "xml2js": "^0.6.2"
    },
    "devDependencies": {
        "@eslint/js": "^9.22.0",
        "@types/bcrypt": "^6.0.0",
        "@types/cors": "^2.8.17",
        "@types/express": "^5.0.0",
        "@types/express-session": "^1.18.1",
        "@types/handlebars": "^4.0.40",
        "@types/jest": "^29.5.14",
        "@types/jsdom": "^21.1.7",
        "@types/multer": "^1.4.12",
        "@types/node": "^22.13.5",
        "@types/node-cron": "^3.0.11",
        "@types/node-persist": "^3.1.8",
        "@types/openid-client": "^3.1.6",
        "@types/supertest": "^6.0.3",
        "@types/xml2js": "^0.4.14",
        "@typescript-eslint/eslint-plugin": "^8.26.1",
        "@typescript-eslint/parser": "^8.26.1",
        "chokidar-cli": "^3.0.0",
        "concurrently": "^9.1.2",
        "cross-env": "^7.0.3",
        "eslint": "^9.22.0",
        "eslint-config-prettier": "^10.1.2",
        "eslint-plugin-import": "^2.31.0",
        "eslint-plugin-simple-import-sort": "^12.1.1",
        "eslint-plugin-vue": "^10.0.0",
        "globals": "^16.0.0",
        "ioredis-mock": "8.13",
        "jest": "^29.7.0",
        "jest-junit": "^16.0.0",
        "nodemon": "^3.1.9",
        "prettier": "^3.5.3",
        "supertest": "^7.1.0",
        "ts-jest": "^29.2.6",
        "ts-node": "^10.9.2",
        "tsconfig-paths": "^4.2.0",
        "typescript": "^5.7.3",
        "typescript-eslint": "^8.26.1"
    },
    "_moduleAliases": {
        "src": "dist/src"
    }
}
