{
  "name": "meet-testapp",
  "version": "1.0.0",
  "description": "",
  "main": "dist/server.js",
  "type": "module",
  "scripts": {
    "start": "npm run build && node dist/server.js",
    "start:dev": "NODE_ENV=development nodemon --watch \"**/*.ts\" --exec \"node --loader ts-node/esm server.ts\"",
    "start:prod": "NODE_ENV=production node dist/server.js",
    "dev": "concurrently \"npm:watch-*\"",
    "watch-ts": "tsc --watch",
    "watch-node": "nodemon --watch dist dist/server.js",
    "watch-client": "nodemon --watch src/public/js --ext ts --exec node src/utils/build-client.js",
    "build": "npm run clean && npm run build-server && npm run build-client && npm run copy-assets",
    "build:dev": "NODE_ENV=development npm run build",
    "build:prod": "NODE_ENV=production npm run build",
    "build-server": "tsc",
    "build-client": "node scripts/build-client.js",
    "copy-assets": "node scripts/copy-assets.js",
    "lint": "eslint . --ext .ts,.js",
    "format": "prettier --write \"**/*.{ts,js}\"",
    "clean": "rimraf dist",
    "test": "jest"
  },
  "dependencies": {
    "cors": "2.8.5",
    "dotenv": "^16.4.7",
    "express": "^4.21.2",
    "mustache-express": "^1.3.2",
    "socket.io": "^4.8.1"
  },
  "devDependencies": {
    "@types/cors": "^2.8.17",
    "@types/express": "^5.0.1",
    "@types/mustache-express": "^1.2.5",
    "@types/node": "^22.15.15",
    "@types/socket.io": "^3.0.1",
    "@typescript-eslint/eslint-plugin": "^8.32.0",
    "@typescript-eslint/parser": "^8.32.0",
    "concurrently": "^9.1.2",
    "eslint": "^9.26.0",
    "eslint-config-prettier": "^10.1.3",
    "eslint-plugin-prettier": "^5.4.0",
    "nodemon": "^3.1.10",
    "prettier": "^3.5.3",
    "rimraf": "^6.0.1",
    "ts-node": "^10.9.2",
    "typescript": "^5.8.3"
  }
}
