{
  "name": "agenda-paper",
  "version": "1.1.3",
  "description": "Show your daily agenda on an ePaper display",
  "license": "MIT",
  "repository": "eshaham/agenda-paper",
  "keywords": [
    "ePaper",
    "ePaper.js",
    "agenda",
    "calendar"
  ],
  "dependencies": {
    "dayjs": "^1.10.7",
    "detect-rpi": "^1.4.0",
    "dotenv": "^8.2.0",
    "express": "^4.17.1",
    "express-ws": "^5.0.2",
    "googleapis": "^91.0.0",
    "pre-commit": "^1.2.2",
    "ws": "^7.5.5"
  },
  "optionalDependencies": {
    "epaperjs": "1.7.1"
  },
  "devDependencies": {
    "@emotion/react": "^11.5.0",
    "@emotion/styled": "^11.3.0",
    "@fontsource/roboto": "^4.5.1",
    "@material-ui/system": "^4.12.1",
    "@mui/material": "^5.0.6",
    "@types/express": "^4.17.13",
    "@types/express-ws": "^3.0.1",
    "@types/node": "^12.20.34",
    "@types/puppeteer": "^5.4.4",
    "@types/react": "^17.0.31",
    "@types/react-dom": "^17.0.10",
    "@types/react-router-dom": "^5.3.2",
    "@types/ws": "^8.2.0",
    "concurrently": "^6.3.0",
    "http-proxy-middleware": "^2.0.1",
    "react": "^17.0.2",
    "react-dom": "^17.0.2",
    "react-router-dom": "^5.3.0",
    "react-scripts": "4.0.3",
    "ts-loader": "^8.3.0",
    "ts-node-dev": "^1.1.8",
    "typescript": "^4.4.4",
    "web-vitals": "^1.1.2",
    "webpack-cli": "^4.9.1",
    "webpack-node-externals": "^3.0.0"
  },
  "scripts": {
    "build": "npm run build:client && npm run build:server",
    "build:client": "BUILD_PATH='./build/client' react-scripts build",
    "build:server": "webpack",
    "eject": "react-scripts eject",
    "lint": "eslint ./",
    "prepublishOnly": "npm run build",
    "start": "concurrently --kill-others npm:start:server npm:start:client",
    "start:server": "cd server && PORT=8080 NODE_ENV=development ts-node-dev --respawn --transpile-only index.ts",
    "start:client": "react-scripts start",
    "serve": "npm run build && node ./build/bundle.js"
  },
  "bin": {
    "agenda-paper": "./build/bundle.js"
  },
  "eslintConfig": {
    "extends": [
      "react-app"
    ],
    "rules": {
      "@typescript-eslint/consistent-type-assertions": [
        "warn",
        {
          "assertionStyle": "angle-bracket"
        }
      ],
      "@typescript-eslint/member-delimiter-style": [
        "error",
        {
          "multiline": {
            "delimiter": "comma",
            "requireLast": true
          },
          "singleline": {
            "delimiter": "comma",
            "requireLast": false
          },
          "overrides": {
            "interface": {
              "multiline": {
                "delimiter": "semi",
                "requireLast": true
              }
            }
          }
        }
      ],
      "@typescript-eslint/semi": "error",
      "comma-dangle": [
        "error",
        "always-multiline"
      ],
      "eol-last": [
        "error",
        "always"
      ],
      "indent": [
        "error",
        2
      ],
      "no-multi-spaces": "error",
      "no-var": "error",
      "object-curly-spacing": [
        "error",
        "always"
      ],
      "prefer-const": "error",
      "quotes": [
        2,
        "single",
        {
          "avoidEscape": true,
          "allowTemplateLiterals": true
        }
      ]
    }
  },
  "pre-commit": [
    "lint"
  ],
  "browserslist": {
    "production": [
      ">0.2%",
      "not dead",
      "not op_mini all"
    ],
    "development": [
      "last 1 chrome version",
      "last 1 firefox version",
      "last 1 safari version"
    ]
  }
}
