{ "name": "web2.0-frontend", "version": "0.1.0", "description": "Web 2.0 Frontend. React, Typescript.", "keywords": [ "react", "webpack", "typescript", "babel", "sass", "hmr", "starter", "boilerplate" ], "author": "Jan Tuomi", "license": "MIT", "homepage": "https://sik.ayy.fi", "scripts": { "build": "NODE_ENV=production npm-run-all build:client build:server", "build:server": "webpack -p --config=configs/webpack/prod.js --env.platform=server", "build:client": "webpack -p --config=configs/webpack/prod.js --env.platform=client", "lint": "npm run lint:ts && npm run lint:sass", "lint:ts": "tslint -p tsconfig.json --format stylish --exclude node_modules", "lint:ts:fix": "tslint -p tsconfig.json --format stylish --exclude node_modules --fix", "lint:sass": "stylelint ./src/**/**/*.scss ./src/**/*.scss ./src/*.scss", "start": "npm run start-dev", "start-dev": "webpack-dev-server --config=configs/webpack/dev.js", "serve": "node dist/js/server.js", "start-prod": "npm run build && npm run serve", "mock-backend": "json-server --watch db.json -H 0.0.0.0 -p 1234", "test": "npm-run-all lint test:e2e", "test:e2e": "npm-run-all -s build test:e2e:run", "test:e2e:run": "npm-run-all -p -r serve test:e2e:testcafe", "test:e2e:testcafe": "testcafe -S -s 'tests/testcafe/screenshots' --app-init-delay 2000 chrome tests/testcafe", "plop": "plop" }, "husky": { "hooks": { "pre-push": "npm run test" } }, "devDependencies": { "@types/node": "^10.3.1", "@types/react": "^16.3.16", "@types/react-dom": "^16.0.6", "awesome-typescript-loader": "^5.0.0", "babel-cli": "^6.26.0", "babel-core": "^6.26.3", "babel-loader": "^7.1.4", "babel-preset-env": "^1.7.0", "babel-preset-minify": "^0.4.3", "babel-preset-react": "^6.24.1", "compression": "^1.7.3", "css-loader": "^0.28.11", "dotenv": "^6.2.0", "dotenv-webpack": "^1.5.7", "express": "^4.16.3", "favicons-webpack-plugin": "0.0.9", "file-loader": "^1.1.11", "fs-extra": "^6.0.1", "helmet": "^3.13.0", "html-webpack-plugin": "^3.2.0", "husky": "^1.0.0-rc.9", "image-webpack-loader": "^4.6.0", "json-server": "^0.14.0", "mini-css-extract-plugin": "^0.4.1", "module-to-cdn": "^3.1.2", "morgan": "^1.9.1", "node-sass": "^4.11.0", "npm-run-all": "^4.1.3", "plop": "^2.0.0", "postcss-loader": "^2.1.5", "react": "^16.4.0", "react-addons-test-utils": "^15.6.2", "react-dom": "^16.4.0", "react-hot-loader": "^4.3.0", "sass-loader": "^7.0.3", "serve": "^9.1.0", "style-loader": "^0.21.0", "stylelint": "^9.2.1", "stylelint-config-standard": "^18.2.0", "stylelint-webpack-plugin": "^0.10.5", "testcafe": "^0.20.5", "testcafe-react-selectors": "^2.1.0", "tslint": "^5.10.0", "uglifyjs-webpack-plugin": "^1.2.5", "webpack": "^4.25.1", "webpack-cdn-plugin": "^2.2.0", "webpack-cli": "^3.0.3", "webpack-dev-middleware": "^3.1.3", "webpack-dev-server": "^3.1.14", "webpack-merge": "^4.1.2", "webpack-node-externals": "^1.7.2" }, "dependencies": { "axios": "^0.18.0", "date-fns": "^2.0.0-alpha.27", "js-cookie": "^2.2.0", "mobx": "^5.0.3", "mobx-react": "^5.2.3", "normalize.css": "^8.0.0", "query-string": "^6.2.0", "react-helmet": "^5.2.0", "react-router": "^4.3.1", "react-router-dom": "^4.3.1" }, "postcss": {} }