victorpopkov/universal-redux

View on GitHub
package.json

Summary

Maintainability
Test Coverage
{
  "name": "universal-redux",
  "description": "Universal React and Redux web app boilerplate bundled with webpack.",
  "version": "0.2.0",
  "author": {
    "name": "Victor Popkov",
    "email": "victor@popkov.me"
  },
  "dependencies": {
    "@babel/plugin-proposal-decorators": "^7.23.9",
    "@babel/plugin-proposal-export-default-from": "^7.23.3",
    "@babel/plugin-proposal-function-bind": "^7.23.3",
    "@babel/plugin-transform-react-display-name": "^7.23.3",
    "@babel/plugin-transform-runtime": "^7.23.9",
    "@babel/polyfill": "^7.12.1",
    "@babel/preset-env": "^7.23.9",
    "@babel/preset-react": "^7.23.3",
    "@babel/register": "^7.23.7",
    "@babel/runtime": "^7.23.9",
    "axios": "^1.6.7",
    "babel-plugin-inline-react-svg": "^2.0.2",
    "babel-plugin-prismjs": "^2.1.0",
    "babel-plugin-webpack-alias": "^2.1.2",
    "body-parser": "^1.20.2",
    "bootstrap": "5.3.3",
    "change-case": "^5.4.4",
    "classnames": "^2.5.1",
    "compression": "^1.7.4",
    "connected-react-router": "^6.9.3",
    "copy-webpack-plugin": "^12.0.2",
    "css-minimizer-webpack-plugin": "^7.0.0",
    "cssnano": "^7.0.5",
    "dotenv-webpack": "^8.1.0",
    "env-cmd": "^10.1.0",
    "express": "^4.19.2",
    "express-session": "^1.18.0",
    "history": "^5.3.0",
    "http-proxy": "^1.18.1",
    "humps": "^2.0.1",
    "immutable": "^4.3.7",
    "ip": "^2.0.1",
    "lodash": "^4.17.21",
    "mini-css-extract-plugin": "^2.9.0",
    "morgan": "^1.10.0",
    "normalizr": "^3.6.2",
    "npm-run-all": "^4.1.5",
    "path": "^0.12.7",
    "pretty-error": "^4.0.0",
    "prismjs": "^1.29.0",
    "prop-types": "^15.8.1",
    "react": "^18.3.1",
    "react-cookie": "^4.1.1",
    "react-dom": "^18.3.1",
    "react-helmet": "^6.1.0",
    "react-hot-loader": "^4.13.1",
    "react-markdown": "^6.0.3",
    "react-redux": "^9.1.2",
    "react-redux-loading-bar": "^5.0.8",
    "react-router": "^5.2.1",
    "react-router-config": "^5.1.1",
    "react-router-dom": "^5.3.0",
    "reactstrap": "^9.2.2",
    "redux": "^5.0.1",
    "redux-actions": "^2.6.5",
    "redux-connect": "^10.0.0",
    "redux-immutablejs": "^0.0.8",
    "redux-notify": "^0.2.0",
    "redux-thunk": "^2.4.2",
    "remark-gfm": "^1.0.0",
    "serialize-javascript": "^6.0.2",
    "serve-favicon": "^2.5.0",
    "terser-webpack-plugin": "5.3.10",
    "universal-cookie": "^7.2.0",
    "universal-cookie-express": "^7.2.0",
    "universal-webpack": "^0.8.5",
    "url": "^0.11.4",
    "webpack-merge": "^6.0.1"
  },
  "devDependencies": {
    "@actions/core": "^1.10.1",
    "@babel/core": "^7.23.9",
    "@babel/eslint-parser": "^7.23.10",
    "@babel/plugin-proposal-class-properties": "^7.18.6",
    "@babel/plugin-syntax-export-default-from": "^7.23.3",
    "autoprefixer": "^10.4.20",
    "babel-loader": "^9.1.3",
    "clean-webpack-plugin": "^4.0.0",
    "css-loader": "^6.10.0",
    "eslint": "^8.56.0",
    "eslint-config-airbnb": "^19.0.4",
    "eslint-config-prettier": "^9.1.0",
    "eslint-plugin-import": "^2.29.1",
    "eslint-plugin-jsx-a11y": "^6.9.0",
    "eslint-plugin-prettier": "^5.2.1",
    "eslint-plugin-react": "^7.35.0",
    "eslint-webpack-plugin": "^4.2.0",
    "file-loader": "^6.2.0",
    "json-loader": "^0.5.7",
    "less": "^4.2.0",
    "less-loader": "^12.2.0",
    "nodemon": "^3.1.4",
    "postcss": "^8.4.41",
    "postcss-import": "^16.1.0",
    "postcss-loader": "^8.1.1",
    "postcss-nested": "^6.2.0",
    "postcss-scss": "^4.0.9",
    "prettier": "^3.3.3",
    "react-a11y": "^1.1.0",
    "redbox-react": "^1.6.0",
    "redux-devtools": "^3.7.0",
    "redux-devtools-dock-monitor": "^1.2.0",
    "redux-devtools-log-monitor": "^2.1.0",
    "redux-logger": "^3.0.6",
    "resolve-url-loader": "^5.0.0",
    "sass": "^1.77.8",
    "sass-loader": "^16.0.0",
    "sass-resources-loader": "^2.2.5",
    "style-loader": "^4.0.0",
    "stylelint": "^16.8.1",
    "stylelint-config-twbs-bootstrap": "^14.2.0",
    "stylelint-webpack-plugin": "^5.0.1",
    "svgo": "^3.3.2",
    "svgo-loader": "^4.0.0",
    "url-loader": "^4.1.1",
    "webpack": "^5.93.0",
    "webpack-cli": "^5.1.4",
    "webpack-dev-middleware": "^7.3.0",
    "webpack-hot-middleware": "^2.26.1",
    "yarn-audit-fix": "^10.0.8",
    "yarn-deduplicate": "^6.0.2"
  },
  "engines": {
    "node": ">=18.12.0"
  },
  "homepage": "https://github.victorpopkov.com/universal-redux/",
  "license": "MIT",
  "main": "bin/server.js",
  "repository": {
    "type": "git",
    "url": "github:victorpopkov/universal-redux"
  },
  "scripts": {
    "audit:fix": "yarn-audit-fix",
    "build": "env-cmd --silent npm-run-all build:*",
    "build:client": "webpack --config='./webpack/prod.client.config.js'",
    "build:server": "webpack --config='./webpack/prod.server.config.js'",
    "ci:eslint": "eslint --ext='js,jsx' --format='./.github/eslint-output.js' .",
    "ci:prettier": "node ./.github/prettier-output.js",
    "deduplicate": "yarn-deduplicate && yarn install",
    "dev": "env-cmd --silent npm-run-all universal-webpack:prepare development",
    "development": "npm-run-all --parallel watch:* start:dev:*",
    "lint": "npm-run-all --continue-on-error lint:*",
    "lint:eslint": "eslint --ext='js,jsx' .",
    "lint:prettier": "prettier --check .",
    "lint:stylelint": "stylelint './src/**/*.css' './src/**/*.scss'",
    "start": "env-cmd --silent npm-run-all --parallel start:prod:*",
    "start:dev:api": "node ./bin/api.js",
    "start:dev:server": "nodemon ./bin/server.js --watch='./src/' --watch='./build/' --no-update-notifier",
    "start:prod:api": "node ./bin/api.js",
    "start:prod:server": "node ./bin/server.js",
    "test": "npm-run-all --continue-on-error lint:*",
    "universal-webpack:prepare": "universal-webpack --settings='./webpack/universal-webpack-settings.json' prepare",
    "watch:client": "node ./webpack/webpack-dev-server.js",
    "watch:server": "webpack --config='./webpack/dev.server.config.js' --watch"
  }
}