{
  "description": "A foundation for scalable desktop apps",
  "private": true,
  "keywords": [
    "electron",
    "boilerplate",
    "react",
    "typescript",
    "ts",
    "sass",
    "webpack",
    "hot",
    "reload"
  ],
  "homepage": "https://github.com/electron-react-boilerplate/electron-react-boilerplate#readme",
  "bugs": {
    "url": "https://github.com/electron-react-boilerplate/electron-react-boilerplate/issues"
  },
  "repository": {
    "type": "git",
    "url": "git+https://github.com/electron-react-boilerplate/electron-react-boilerplate.git"
  },
  "license": "MIT",
  "author": {
    "name": "moonrailgun",
    "email": "moonrailgun@gmail.com",
    "url": "https://github.com/moonrailgun"
  },
  "contributors": [
    {
      "name": "Amila Welihinda",
      "email": "amilajack@gmail.com",
      "url": "https://github.com/amilajack"
    }
  ],
  "main": "./src/main/main.ts",
  "scripts": {
    "build": "concurrently \"yarn build:main\" \"yarn build:renderer\"",
    "build:main": "cross-env NODE_ENV=production TS_NODE_TRANSPILE_ONLY=true webpack --config ./.erb/configs/webpack.config.main.prod.ts",
    "build:renderer": "cross-env NODE_ENV=production TS_NODE_TRANSPILE_ONLY=true webpack --config ./.erb/configs/webpack.config.renderer.prod.ts",
    "postinstall": "ts-node .erb/scripts/check-native-dep.js && electron-builder install-app-deps",
    "lint": "cross-env NODE_ENV=development eslint . --ext .js,.jsx,.ts,.tsx",
    "package": "cross-env DEBUG_PROD=true yarn package:nodebug --config.asar=false",
    "package:all": "yarn package:nodebug -mwl",
    "package:nodebug": "ts-node ./.erb/scripts/clean.js dist && yarn build && electron-builder build --publish never",
    "rebuild": "electron-rebuild --parallel --types prod,dev,optional --module-dir release/app",
    "dev": "cross-env FE_URL=http://127.0.0.1:11011 SERVICE_URL=http://127.0.0.1:11000 yarn start",
    "dev:nightly": "cross-env FE_URL=http://nightly.paw.msgbyte.com SERVICE_URL=https://tailchat-nightly.moonrailgun.com/ yarn start",
    "start": "ts-node ./.erb/scripts/check-port-in-use.js && yarn start:renderer",
    "start:main": "cross-env NODE_ENV=development electronmon -r ts-node/register/transpile-only .",
    "start:preload": "cross-env NODE_ENV=development TS_NODE_TRANSPILE_ONLY=true webpack --config ./.erb/configs/webpack.config.preload.dev.ts",
    "start:renderer": "cross-env NODE_ENV=development TS_NODE_TRANSPILE_ONLY=true webpack serve --config ./.erb/configs/webpack.config.renderer.dev.ts",
    "http-server": "ts-node test/http-server.ts",
    "test": "jest"
  },
  "lint-staged": {
    "*.{js,jsx,ts,tsx}": [
      "cross-env NODE_ENV=development eslint --cache"
    ],
    "*.json,.{eslintrc,prettierrc}": [
      "prettier --ignore-path .eslintignore --parser json --write"
    ],
    "*.{css,scss}": [
      "prettier --ignore-path .eslintignore --single-quote --write"
    ],
    "*.{html,md,yml}": [
      "prettier --ignore-path .eslintignore --single-quote --write"
    ]
  },
  "browserslist": [],
  "prettier": {
    "singleQuote": true,
    "overrides": [
      {
        "files": [
          ".prettierrc",
          ".eslintrc"
        ],
        "options": {
          "parser": "json"
        }
      }
    ]
  },
  "jest": {
    "moduleDirectories": [
      "node_modules",
      "release/app/node_modules"
    ],
    "moduleFileExtensions": [
      "js",
      "jsx",
      "ts",
      "tsx",
      "json"
    ],
    "moduleNameMapper": {
      "\\.(jpg|jpeg|png|gif|eot|otf|webp|svg|ttf|woff|woff2|mp4|webm|wav|mp3|m4a|aac|oga)$": "<rootDir>/.erb/mocks/fileMock.js",
      "\\.(css|less|sass|scss)$": "identity-obj-proxy"
    },
    "setupFiles": [
      "./.erb/scripts/check-build-exists.ts"
    ],
    "testEnvironment": "jsdom",
    "testEnvironmentOptions": {
      "url": "http://localhost/"
    },
    "testPathIgnorePatterns": [
      "release/app/dist"
    ],
    "transform": {
      "\\.(ts|tsx|js|jsx)$": "ts-jest"
    }
  },
  "dependencies": {
    "electron-debug": "^3.2.0",
    "electron-is": "^3.0.0",
    "electron-log": "^4.4.7",
    "electron-screenshots": "^0.5.15",
    "electron-serve": "^1.1.0",
    "electron-updater": "^5.0.1",
    "electron-window-state": "^5.0.3",
    "express": "^4.18.1",
    "get-port": "5.1.1",
    "lodash": "^4.17.21",
    "react": "^18.1.0",
    "react-dom": "^18.1.0",
    "react-router-dom": "^6.3.0",
    "source-ref-loader": "^1.0.7"
  },
  "devDependencies": {
    "@pmmmwh/react-refresh-webpack-plugin": "^0.5.6",
    "@svgr/webpack": "^6.2.1",
    "@teamsupercell/typings-for-css-modules-loader": "^2.5.1",
    "@testing-library/jest-dom": "^5.16.4",
    "@testing-library/react": "^13.2.0",
    "@types/jest": "^27.5.1",
    "@types/lodash": "^4.14.191",
    "@types/node": "^17.0.42",
    "@types/react": "^18.0.9",
    "@types/react-dom": "^18.0.4",
    "@types/react-test-renderer": "^18.0.0",
    "@types/terser-webpack-plugin": "^5.0.4",
    "@types/webpack-bundle-analyzer": "^4.4.1",
    "@typescript-eslint/eslint-plugin": "^5.23.0",
    "@typescript-eslint/parser": "^5.23.0",
    "autoprefixer": "^10.4.7",
    "browserslist-config-erb": "^0.0.3",
    "chalk": "^4.1.2",
    "concurrently": "^7.6.0",
    "copy-webpack-plugin": "^11.0.0",
    "core-js": "^3.22.5",
    "cross-env": "^7.0.3",
    "crypto-browserify": "^3.12.0",
    "css-loader": "^5.2.6",
    "css-minimizer-webpack-plugin": "^3.4.1",
    "detect-port": "^1.3.0",
    "dotenv": "^16.0.1",
    "electron": "^18.2.3",
    "electron-builder": "^23.0.3",
    "electron-devtools-installer": "^3.2.0",
    "electron-notarize": "^1.2.1",
    "electron-rebuild": "^3.2.7",
    "electronmon": "^2.0.2",
    "esbuild-loader": "^2.19.0",
    "eslint": "^8.15.0",
    "eslint-config-airbnb-base": "^15.0.0",
    "eslint-config-erb": "^4.0.3",
    "eslint-import-resolver-typescript": "^2.7.1",
    "eslint-import-resolver-webpack": "^0.13.2",
    "eslint-plugin-compat": "^4.0.2",
    "eslint-plugin-import": "^2.26.0",
    "eslint-plugin-jest": "^26.2.2",
    "eslint-plugin-jsx-a11y": "^6.5.1",
    "eslint-plugin-promise": "^6.0.0",
    "eslint-plugin-react": "^7.29.4",
    "eslint-plugin-react-hooks": "^4.5.0",
    "file-loader": "^6.2.0",
    "html-webpack-plugin": "^5.5.0",
    "https-browserify": "^1.0.0",
    "identity-obj-proxy": "^3.0.0",
    "jest": "27.5.1",
    "jest-environment-jsdom": "27.5.1",
    "less": "^4.1.3",
    "less-loader": "^10.0.0",
    "lint-staged": "^12.4.1",
    "mini-css-extract-plugin": "^2.6.0",
    "path-browserify": "^1.0.1",
    "postcss-loader": "^7.0.0",
    "prettier": "^2.6.2",
    "react-refresh": "^0.13.0",
    "react-test-renderer": "^18.1.0",
    "rimraf": "^3.0.2",
    "sass": "^1.51.0",
    "sass-loader": "^12.6.0",
    "stream-browserify": "^3.0.0",
    "stream-http": "^3.2.0",
    "style-loader": "^3.3.1",
    "tailwindcss": "^2.2.4",
    "terser-webpack-plugin": "^5.3.1",
    "ts-jest": "27.1.4",
    "ts-loader": "^9.3.0",
    "ts-node": "^10.7.0",
    "typescript": "^4.6.4",
    "url": "^0.11.0",
    "url-loader": "^4.1.1",
    "webpack": "5.73.0",
    "webpack-bundle-analyzer": "^4.5.0",
    "webpack-cli": "^4.9.2",
    "webpack-dev-server": "^4.9.0",
    "webpack-merge": "^5.8.0"
  },
  "devEngines": {
    "node": ">=14.x",
    "npm": ">=7.x"
  },
  "electronmon": {
    "patterns": [
      "!**/**",
      "src/main/*"
    ],
    "logLevel": "quiet"
  }
}
