mirror of
https://github.com/Paris-est-Ludique/intranet.git
synced 2025-06-08 00:24:21 +02:00
224 lines
8.2 KiB
JSON
224 lines
8.2 KiB
JSON
{
|
|
"name": "intranet",
|
|
"version": "2.0.0",
|
|
"private": true,
|
|
"description": "A starter boilerplate for a universal web application with the best development experience and best practices.",
|
|
"license": "MIT",
|
|
"homepage": "https://github.com/forceoranj/intranet",
|
|
"repository": "https://github.com/forceoranj/intranet",
|
|
"bugs": "https://github.com/forceoranj/intranet/issues",
|
|
"keywords": [
|
|
"starter",
|
|
"boilerplate",
|
|
"universal",
|
|
"react",
|
|
"react-hooks",
|
|
"redux",
|
|
"redux-toolkit",
|
|
"react-router",
|
|
"express",
|
|
"webpack",
|
|
"es6+",
|
|
"typescript",
|
|
"code-splitting",
|
|
"react-refresh",
|
|
"babel",
|
|
"postcss",
|
|
"jest",
|
|
"unit-testing",
|
|
"react-testing-library",
|
|
"performance-optimization",
|
|
"best-practices",
|
|
"eslint",
|
|
"stylelint",
|
|
"prettier"
|
|
],
|
|
"author": "Paris est Ludique <forceoranj@gmail.com> (https://github.com/forceoranj)",
|
|
"engines": {
|
|
"node": ">=12",
|
|
"npm": ">=6"
|
|
},
|
|
"scripts": {
|
|
"dev": "yarn dev:build && nodemon ./public/server",
|
|
"dev:build": "cross-env NODE_ENV=development webpack --config ./webpack/server.config.ts",
|
|
"local-start": "cross-env LOCAL=true yarn build && node ./public/server",
|
|
"start": "node ./public/server",
|
|
"build": "run-s build:*",
|
|
"build:server": "cross-env NODE_ENV=production webpack --config ./webpack/server.config.ts",
|
|
"build:client": "cross-env NODE_ENV=production webpack --config ./webpack/client.config.ts",
|
|
"analyze:server": "cross-env NODE_ENV=analyze webpack --config ./webpack/server.config.ts",
|
|
"analyze:client": "cross-env NODE_ENV=analyze webpack --config ./webpack/client.config.ts",
|
|
"lint": "run-s lint:*",
|
|
"lint:code": "eslint --fix . --ext .js,.jsx,.ts,.tsx",
|
|
"lint:type": "tsc",
|
|
"lint:style": "stylelint --fix \"**/*.{css,scss,sass,ts,tsx}\"",
|
|
"lint:format": "prettier -w . -u --loglevel silent",
|
|
"test": "cross-env NODE_ENV=test jest --config ./jest/config.js",
|
|
"test:watch": "yarn test --watch",
|
|
"test:cov": "yarn test --coverage",
|
|
"test:update": "yarn test -u",
|
|
"prepare": "husky install"
|
|
},
|
|
"lint-staged": {
|
|
"*.{js,jsx,ts,tsx}": "eslint --fix",
|
|
"*.{css,sass,ts,tsx}": "stylelint --fix",
|
|
"**/*": "prettier -w -u"
|
|
},
|
|
"browserslist": [
|
|
"> 1%",
|
|
"last 2 versions"
|
|
],
|
|
"dependencies": {
|
|
"@babel/runtime": "^7.14.6",
|
|
"@loadable/component": "^5.15.0",
|
|
"@loadable/server": "^5.15.0",
|
|
"@reduxjs/toolkit": "^1.6.0",
|
|
"@sendgrid/mail": "^7.6.0",
|
|
"@types/cookie-parser": "^1.4.2",
|
|
"@types/detect-node": "^2.0.0",
|
|
"@types/js-cookie": "^3.0.1",
|
|
"@types/lodash": "^4.14.177",
|
|
"@types/react-modal": "^3.13.1",
|
|
"@types/serviceworker": "^0.0.32",
|
|
"@types/web-push": "^3.3.2",
|
|
"autoprefixer": "^10.2.6",
|
|
"axios": "^0.21.1",
|
|
"bcrypt": "^5.0.1",
|
|
"body-parser": "^1.20.0",
|
|
"chalk": "^4.1.1",
|
|
"classnames": "^2.3.1",
|
|
"compression": "^1.7.4",
|
|
"connected-react-router": "^6.9.1",
|
|
"cookie-parser": "^1.4.6",
|
|
"core-js": "^3.15.2",
|
|
"cross-env": "^7.0.3",
|
|
"detect-node": "^2.1.0",
|
|
"express": "^4.17.1",
|
|
"fs": "^0.0.1-security",
|
|
"google-auth-library": "^7.10.1",
|
|
"google-spreadsheet": "^3.1.15",
|
|
"googleapis": "^88.2.0",
|
|
"helmet": "^4.6.0",
|
|
"history": "^4.10.1",
|
|
"hpp": "^0.2.3",
|
|
"html-minifier": "^4.0.0",
|
|
"https": "^1.0.0",
|
|
"js-cookie": "^3.0.1",
|
|
"jsonwebtoken": "^8.5.1",
|
|
"lodash": "^4.17.21",
|
|
"morgan": "^1.10.0",
|
|
"normalize.css": "^8.0.1",
|
|
"process": "^0.11.10",
|
|
"react": "^17.0.2",
|
|
"react-dom": "^17.0.2",
|
|
"react-helmet": "^6.1.0",
|
|
"react-modal": "^3.14.4",
|
|
"react-redux": "^7.2.4",
|
|
"react-router": "^5.2.0",
|
|
"react-router-config": "^5.1.1",
|
|
"react-router-dom": "^5.3.0",
|
|
"react-toastify": "^8.1.0",
|
|
"readline": "^1.3.0",
|
|
"redux-devtools-extension": "^2.13.9",
|
|
"redux-thunk": "^2.3.0",
|
|
"serialize-javascript": "^6.0.0",
|
|
"serve-favicon": "^2.5.0",
|
|
"web-push": "^3.4.5"
|
|
},
|
|
"devDependencies": {
|
|
"@babel/core": "^7.14.6",
|
|
"@babel/plugin-transform-runtime": "^7.14.5",
|
|
"@babel/preset-env": "^7.14.7",
|
|
"@babel/preset-react": "^7.14.5",
|
|
"@babel/preset-typescript": "^7.14.5",
|
|
"@loadable/babel-plugin": "^5.13.2",
|
|
"@loadable/webpack-plugin": "^5.15.0",
|
|
"@pmmmwh/react-refresh-webpack-plugin": "^0.4.3",
|
|
"@testing-library/jest-dom": "^5.14.1",
|
|
"@testing-library/react": "^12.0.0",
|
|
"@types/bcrypt": "^5.0.0",
|
|
"@types/compression": "^1.7.1",
|
|
"@types/compression-webpack-plugin": "^6.0.6",
|
|
"@types/css-minimizer-webpack-plugin": "^3.0.2",
|
|
"@types/express": "4.17.1",
|
|
"@types/google-spreadsheet": "^3.1.5",
|
|
"@types/hpp": "^0.2.1",
|
|
"@types/html-minifier": "^4.0.1",
|
|
"@types/jest": "^26.0.24",
|
|
"@types/jsonwebtoken": "^8.5.6",
|
|
"@types/loadable__component": "^5.13.4",
|
|
"@types/loadable__server": "^5.12.6",
|
|
"@types/loadable__webpack-plugin": "^5.7.3",
|
|
"@types/mini-css-extract-plugin": "^2.0.1",
|
|
"@types/morgan": "^1.9.3",
|
|
"@types/react-dom": "^17.0.8",
|
|
"@types/react-helmet": "^6.1.1",
|
|
"@types/react-router-config": "^5.0.2",
|
|
"@types/react-router-dom": "^5.1.7",
|
|
"@types/react-test-renderer": "^17.0.1",
|
|
"@types/redux-mock-store": "^1.0.2",
|
|
"@types/serialize-javascript": "^5.0.1",
|
|
"@types/serve-favicon": "^2.5.3",
|
|
"@types/terser-webpack-plugin": "^5.0.4",
|
|
"@types/webpack-bundle-analyzer": "^4.4.1",
|
|
"@types/webpack-manifest-plugin": "^3.0.5",
|
|
"@types/webpack-node-externals": "^2.5.2",
|
|
"@typescript-eslint/eslint-plugin": "^4.28.2",
|
|
"@typescript-eslint/parser": "^4.28.2",
|
|
"babel-loader": "^8.2.2",
|
|
"compression-webpack-plugin": "^8.0.1",
|
|
"css-loader": "^5.2.6",
|
|
"css-minimizer-webpack-plugin": "^3.0.2",
|
|
"eslint": "^7.14.0",
|
|
"eslint-config-airbnb": "^18.2.1",
|
|
"eslint-config-prettier": "^8.3.0",
|
|
"eslint-import-resolver-typescript": "^2.4.0",
|
|
"eslint-plugin-import": "^2.22.1",
|
|
"eslint-plugin-jest": "^24.3.6",
|
|
"eslint-plugin-jest-dom": "^3.9.0",
|
|
"eslint-plugin-jsx-a11y": "^6.4.1",
|
|
"eslint-plugin-react": "^7.23.2",
|
|
"eslint-plugin-react-hooks": "^4",
|
|
"eslint-plugin-testing-library": "^4.9.0",
|
|
"fork-ts-checker-webpack-plugin": "^6.2.12",
|
|
"husky": "^7.0.1",
|
|
"identity-obj-proxy": "^3.0.0",
|
|
"image-minimizer-webpack-plugin": "^2.2.0",
|
|
"imagemin-gifsicle": "^7.0.0",
|
|
"imagemin-jpegtran": "^7.0.0",
|
|
"imagemin-optipng": "^8.0.0",
|
|
"imagemin-svgo": "^9.0.0",
|
|
"jest": "^27.0.6",
|
|
"lint-staged": "^11.0.0",
|
|
"mini-css-extract-plugin": "^2.1.0",
|
|
"nodemon": "^2.0.9",
|
|
"npm-run-all": "^4.1.5",
|
|
"postcss": "^8.3.5",
|
|
"postcss-loader": "^6.1.1",
|
|
"prettier": "^2.3.2",
|
|
"react-refresh": "^0.10.0",
|
|
"react-test-renderer": "^17.0.2",
|
|
"redux-mock-store": "^1.5.4",
|
|
"sass": "^1.52.3",
|
|
"sass-loader": "^12.1.0",
|
|
"source-map-support": "^0.5.19",
|
|
"stylelint": "^13.13.1",
|
|
"stylelint-config-prettier": "^8.0.2",
|
|
"stylelint-config-sass-guidelines": "^8.0.0",
|
|
"stylelint-config-standard": "^22.0.0",
|
|
"stylelint-order": "^4.1.0",
|
|
"terser-webpack-plugin": "^5.1.4",
|
|
"ts-jest": "^27.0.3",
|
|
"ts-node": "^10.0.0",
|
|
"typescript": "^4.3.5",
|
|
"webpack": "^5.43.0",
|
|
"webpack-bundle-analyzer": "^4.4.2",
|
|
"webpack-cli": "^4.7.2",
|
|
"webpack-dev-middleware": "^5.0.0",
|
|
"webpack-hot-middleware": "^2.25.0",
|
|
"webpack-manifest-plugin": "^3.1.1",
|
|
"webpack-merge": "^5.8.0",
|
|
"webpack-node-externals": "^3.0.0"
|
|
}
|
|
}
|