{ "name": "PixelPlanet", "version": "1.0.0", "private": true, "engines": { "node": ">=10.16.0", "npm": ">=6.13.4" }, "description": "Unlimited planet canvas for placing pixels", "main": "server.js", "scripts": { "build": "babel-node scripts/run prebuild && npm run webpack", "clean": "babel-node scripts/run clean", "webpack": "webpack --config ./webpack.config.web.babel.js && parallel-webpack --config ./webpack.config.client.babel.js", "extract": "webpack --env extract --config ./webpack.config.web.babel.js && webpack --env extract --config ./webpack.config.client.babel.js", "babel-node": "cd $INIT_CWD && babel-node", "lint": "cd $INIT_CWD && eslint --ext .jsx --ext .js", "lint:src": "eslint --ext .jsx --ext .js src", "lint:css": "stylelint \"src/**/*.{css,less,scss,sss}\"", "lint:staged": "lint-staged", "upgrade": "npm-check --update" }, "author": "HF ", "browserslist": [ "defaults", "not IE 11", "not IE_Mob 11" ], "dependencies": { "bcrypt": "^5.0.0", "bluebird": "^3.5.0", "body-parser": "^1.17.2", "bufferutil": "^4.0.3", "compression": "^1.7.3", "connect-redis": "^5.0.0", "cookie-parser": "^1.4.5", "core-js": "^3.8.3", "cors": "^2.8.4", "etag": "^1.8.1", "express": "^4.15.3", "express-limiter": "^1.6.0", "express-session": "^1.17.1", "global": "^4.3.2", "http-proxy-agent": "^4.0.1", "image-q": "^2.1.2", "ip-address": "^7.1.0", "isomorphic-fetch": "^3.0.0", "js-file-download": "^0.4.12", "localforage": "^1.9.0", "morgan": "^1.10.0", "multer": "^1.4.1", "mysql2": "^2.2.5", "nodemailer": "^6.4.17", "passport": "^0.4.0", "passport-discord": "^0.1.4", "passport-facebook": "^3.0.0", "passport-google-oauth": "^2.0.0", "passport-json": "^1.2.0", "passport-reddit": "^0.2.4", "passport-vkontakte": "^0.5.0", "react": "^17.0.1", "react-dom": "^17.0.1", "react-icons": "^4.1.0", "react-modal": "^3.12.1", "react-redux": "^7.2.1", "react-responsive": "^8.2.0", "react-stay-scrolled": "^7.3.0", "react-toggle-button": "^2.1.0", "redis": "^3.0.2", "redlock": "^4.0.0", "redux": "^4.0.4", "redux-logger": "^3.0.6", "redux-persist": "^6.0.0", "redux-thunk": "^2.2.0", "sequelize": "^6.5.0", "sharp": "^0.27.1", "startaudiocontext": "^1.2.1", "sweetalert2": "^10.14.0", "three": "^0.125.2", "three-trackballcontrols": "^0.9.0", "ttag": "^1.7.24", "ttag-po-loader": "0.0.2", "url-search-params-polyfill": "^8.1.0", "winston": "^3.3.3", "winston-daily-rotate-file": "^4.5.0", "ws": "^7.4.2" }, "devDependencies": { "@babel/core": "^7.12.10", "@babel/node": "^7.12.10", "@babel/plugin-proposal-class-properties": "^7.10.4", "@babel/plugin-proposal-decorators": "^7.12.12", "@babel/plugin-proposal-do-expressions": "^7.10.4", "@babel/plugin-proposal-export-default-from": "^7.10.4", "@babel/plugin-proposal-export-namespace-from": "^7.10.4", "@babel/plugin-proposal-function-bind": "^7.11.5", "@babel/plugin-proposal-function-sent": "^7.10.4", "@babel/plugin-proposal-json-strings": "^7.10.4", "@babel/plugin-proposal-logical-assignment-operators": "^7.11.0", "@babel/plugin-proposal-nullish-coalescing-operator": "^7.10.4", "@babel/plugin-proposal-numeric-separator": "^7.12.7", "@babel/plugin-proposal-object-rest-spread": "^7.11.0", "@babel/plugin-proposal-optional-chaining": "^7.12.7", "@babel/plugin-proposal-pipeline-operator": "^7.10.5", "@babel/plugin-proposal-throw-expressions": "^7.10.4", "@babel/plugin-syntax-dynamic-import": "^7.8.3", "@babel/plugin-syntax-import-meta": "^7.10.4", "@babel/plugin-transform-flow-strip-types": "^7.12.10", "@babel/plugin-transform-react-constant-elements": "^7.10.4", "@babel/plugin-transform-react-inline-elements": "^7.10.4", "@babel/polyfill": "^7.11.5", "@babel/preset-env": "^7.12.11", "@babel/preset-flow": "^7.10.4", "@babel/preset-react": "^7.12.10", "@babel/preset-typescript": "^7.12.7", "assets-webpack-plugin": "^7.0.0", "babel-eslint": "^10.1.0", "babel-loader": "^8.2.2", "babel-plugin-transform-react-pure-class-to-function": "^1.0.1", "babel-plugin-transform-react-remove-prop-types": "^0.4.24", "babel-plugin-ttag": "^1.7.30", "clean-css": "^5.0.1", "css-loader": "^5.0.1", "eslint": "^7.19.0", "eslint-config-airbnb": "^18.2.1", "eslint-config-airbnb-base": "^14.2.1", "eslint-plugin-flowtype": "^5.2.0", "eslint-plugin-import": "^2.22.1", "eslint-plugin-jsx-a11y": "^6.3.1", "eslint-plugin-react": "^7.22.0", "flow-bin": "^0.143.1", "generate-package-json-webpack-plugin": "^2.1.2", "glob": "^7.1.6", "json-loader": "^0.5.4", "mkdirp": "^1.0.4", "npm-check": "^5.9.2", "parallel-webpack": "^2.6.0", "react-hot-loader": "^4.13.0", "react-svg-loader": "^3.0.3", "rimraf": "^3.0.2", "style-loader": "^2.0.0", "ttag-cli": "^1.9.1", "webpack": "^5.19.0", "webpack-bundle-analyzer": "^4.4.0", "webpack-cli": "^4.4.0", "webpack-dev-middleware": "^4.1.0", "webpack-hot-middleware": "^2.18.0", "webpack-node-externals": "^2.5.2", "write-file-webpack-plugin": "^4.0.2" } }