package.json
{
"name": "server",
"version": "1.0.0",
"description": "",
"main": "app.js",
"scripts": {
"start": "babel-watch server/dist/bin/www.js",
"build": "babel server/src --out-dir server/dist --presets es2015",
"build:watch": "babel server/src --watch --out-dir server/dist --presets es2015",
"pretest": "rimraf server/dist && mkdir server/dist && npm run build && sequelize db:migrate:undo:all --env=test && sequelize db:migrate --env=test && sequelize db:seed:all --env=test ",
"test": "export NODE_ENV=test && mocha server/dist/test/index.spec.js --timeout 10000 && export NODE_ENV=development",
"client:test": "jest --coverage",
"coverage": "export NODE_ENV=test && npm run pretest && nyc --reporter=lcov --reporter=text --reporter=lcovonly mocha --compilers js:babel-register server/src/test/*",
"start:migrate": "sequelize db:migrate ",
"undo:migrate": "sequelize db:migrate:undo:all",
"seed:all": "sequelize db:seed:all",
"undo:seed": "sequelize db:seed:undo:all",
"start:dev": "babel-node server/dist/bin/www.js",
"start:webdev": "webpack -d && webpack-dev-server && --content-base client/src/ --inline --hot",
"start-prod": "babel server/src --out-dir server/dist --presets es2015 && npm run heroku-postbuild",
"heroku-postbuild": "rimraf client/dist && mkdir client/dist && npm run build && export NODE_ENV=production && npm run undo:migrate && npm run start:migrate && npm run seed:all && webpack",
"e2e-setup": "selenium-standalone install",
"e2e-server": "selenium-standalone start",
"start:server:e2e": "NODE_ENV=test babel-watch server/dist/bin/www --exec babel-node",
"pretest:e2e": "export NODE_ENV=test && npm run undo:migrate && npm run start:migrate && npm run seed:all",
"test:e2e": "nightwatch"
},
"nyc": {
"exclude": [
"server/dist/",
"server/src/cron/",
"server/src/mailer/"
]
},
"jest": {
"verbose": true,
"rootDir": "./client",
"coveragePathIgnorePatterns": [
"<rootDir>/__tests__/shim.js",
"<rootDir>/__tests__/__config__"
],
"testMatch": [
"**/?(*.)(spec).js?(x)"
],
"setupFiles": [
"<rootDir>/__tests__/shim.js",
"jest-localstorage-mock",
"<rootDir>/__tests__/__config__/setup.js"
],
"moduleFileExtensions": [
"js",
"jsx",
"json"
],
"moduleNameMapper": {
"\\.(jpg|jpeg|png|gif|eot|otf|webp|svg|ttf|woff|woff2)$": "<rootDir>/__tests__/__mocks__/fileMock.js",
"\\.(s?css|less)$": "identity-obj-proxy"
}
},
"engines": {
"npm": "5.3.0",
"node": "7.4.0"
},
"keywords": [],
"author": "",
"license": "ISC",
"dependencies": {
"axios": "^0.16.2",
"axios-mock-adapter": "^1.10.0",
"babel-cli": "^6.24.1",
"babel-core": "^6.26.0",
"babel-eslint": "^7.2.3",
"babel-loader": "^7.1.2",
"babel-polyfill": "^6.23.0",
"babel-preset-env": "^1.6.0",
"babel-preset-es2015": "^6.24.1",
"babel-preset-react": "^6.24.1",
"babel-preset-stage-2": "^6.24.1",
"babel-register": "^6.24.1",
"babel-watch": "^2.0.7",
"bcrypt": "^1.0.3",
"body-parser": "^1.17.2",
"chai": "^4.1.0",
"chai-http": "^3.0.0",
"cheerio": "^1.0.0-rc.2",
"colors": "^1.1.2",
"concurrently": "^3.5.0",
"cron": "^1.3.0",
"cross-env": "^5.0.5",
"css-loader": "^0.28.7",
"debug": "^3.0.0",
"dotenv": "^4.0.0",
"enzyme-adapter-react-15": "^1.0.5",
"eslint": "^4.3.0",
"eslint-config-airbnb": "^16.1.0",
"eslint-config-react": "^1.1.7",
"eslint-plugin-react": "^7.4.0",
"expect": "^22.0.3",
"express": "^4.15.3",
"express-boom": "^2.0.0",
"extract-text-webpack-plugin": "^3.0.0",
"faker": "^4.1.0",
"file-loader": "^0.11.2",
"html-loader": "^0.5.1",
"html-webpack-plugin": "^2.30.1",
"jest": "^21.2.1",
"jest-localstorage-mock": "^2.1.0",
"jquery": "^3.2.1",
"json": "^9.0.6",
"jsonwebtoken": "^7.4.1",
"jwt-decode": "^2.2.0",
"lodash": "^4.17.4",
"maildev": "^1.0.0-rc3",
"materialize-css": "^0.100.2",
"mocha": "^3.5.0",
"moment": "^2.19.2",
"morgan": "^1.8.2",
"node-cron": "^1.2.1",
"node-sass": "^4.5.3",
"nodemailer": "^4.4.0",
"nodemailer-mailgun-transport": "^1.3.5",
"nodemon": "^1.11.0",
"pg": "^7.0.2",
"prop-types": "^15.5.10",
"react": "^16.2.0",
"react-datepicker": "^0.61.0",
"react-dom": "^16.2.0",
"react-google-login": "^3.0.2",
"react-materialize": "^1.0.11",
"react-preload": "^0.5.1",
"react-redux": "^5.0.6",
"react-router": "^4.2.0",
"react-router-dom": "^4.2.2",
"react-router-redux": "^4.0.8",
"react-tabs": "^2.1.0",
"react-tooltip": "^3.4.0",
"redux": "^3.7.2",
"redux-devtools-extension": "^2.13.2",
"redux-immutable-state-invariant": "^2.1.0",
"redux-logger": "^3.0.6",
"redux-mock-store": "^1.3.0",
"redux-notifications": "^4.0.1",
"redux-persist": "^4.10.1",
"redux-thunk": "^2.2.0",
"rimraf": "^2.6.2",
"sass-loader": "^6.0.6",
"scss-loader": "0.0.1",
"sentence-case": "^2.1.1",
"sequelize": "^4.7.5",
"sequelize-cli": "^2.8.0",
"style-loader": "^0.18.2",
"superagent": "^3.8.1",
"sweetalert2": "^6.11.5",
"to-title-case": "^1.0.0",
"unique-random": "^1.0.0",
"validator": "^8.2.0",
"validators": "^0.3.1",
"webpack": "^3.5.5",
"webpack-dev-server": "^2.7.1"
},
"devDependencies": {
"babel-jest": "^21.2.0",
"clean-webpack-plugin": "^0.1.16",
"coveralls": "^2.13.1",
"enzyme": "^3.2.0",
"enzyme-adapter-react-16": "^1.1.1",
"enzyme-to-json": "^3.3.0",
"eslint-plugin-import": "^2.8.0",
"identity-obj-proxy": "^3.0.0",
"mocha-lcov-reporter": "^1.3.0",
"nyc": "^11.1.0",
"path": "^0.12.7",
"purify-css": "^1.2.5",
"purifycss": "^1.2.6",
"purifycss-webpack": "^0.7.0",
"react-addons-css-transition-group": "^15.6.0",
"react-addons-transition-group": "^15.6.0",
"react-test-renderer": "^16.2.0",
"redux-promise-middleware": "^4.4.1",
"selenium-standalone": "^6.12.0"
}
}