{ "name": "sourcecred", "version": "0.1.0", "private": true, "dependencies": { "aphrodite": "^2.1.0", "better-sqlite3": "^5.4.0", "chalk": "1.1.3", "commonmark": "^0.28.1", "express": "^4.16.3", "fs-extra": "3.0.1", "history": "^3.0.0", "isomorphic-fetch": "^2.2.1", "json-stable-stringify": "^1.0.1", "lodash.clonedeep": "^4.5.0", "lodash.isequal": "^4.5.0", "lodash.sortby": "^4.7.0", "mkdirp": "^0.5.1", "object-assign": "4.1.1", "pako": "^1.0.6", "promise": "8.0.1", "react": "^16.4.1", "react-dom": "^16.4.1", "react-icons": "^3.7.0", "react-markdown": "^4.0.8", "react-router": "3.2.1", "retry": "^0.12.0", "rimraf": "^2.6.3", "svg-react-loader": "^0.4.6", "tmp": "^0.0.33", "whatwg-fetch": "2.0.3" }, "devDependencies": { "babel-core": "6.26.0", "babel-eslint": "7.2.3", "babel-jest": "20.0.3", "babel-loader": "7.1.2", "babel-plugin-transform-es2015-for-of": "^6.23.0", "babel-preset-react-app": "^3.1.1", "babel-runtime": "6.26.0", "copy-webpack-plugin": "^4.5.2", "css-loader": "0.28.7", "dotenv": "4.0.0", "dotenv-expand": "4.0.1", "enzyme": "^3.3.0", "enzyme-adapter-react-16": "^1.1.1", "enzyme-to-json": "^3.3.3", "eslint": "4.10.0", "eslint-config-react-app": "^2.1.0", "eslint-plugin-flowtype": "2.50.0", "eslint-plugin-import": "2.8.0", "eslint-plugin-jsx-a11y": "5.1.1", "eslint-plugin-react": "7.4.0", "file-loader": "1.1.5", "flow-bin": "^0.102.0", "jest": "^24.8.0", "jest-fetch-mock": "^1.6.5", "prettier": "^1.18.2", "raf": "3.4.0", "react-dev-utils": "^5.0.0", "static-site-generator-webpack-plugin": "^3.4.1", "url-loader": "0.6.2", "webpack": "3.8.1", "webpack-dev-server": "2.9.4", "webpack-manifest-plugin": "1.3.2", "webpack-node-externals": "^1.7.2" }, "scripts": { "prettify": "prettier --write '**/*.js'", "check-pretty": "prettier --list-different '**/*.js'", "start": "NODE_ENV=development webpack-dev-server --config config/webpack.config.web.js", "build": "NODE_ENV=production webpack --config config/webpack.config.web.js", "backend": "NODE_ENV=development webpack --config config/webpack.config.backend.js", "test": "node ./config/test.js", "unit": "BABEL_ENV=test NODE_ENV=test jest --env=jsdom", "sharness": "make -sC ./sharness prove PROVE_OPTS=-f TEST_OPTS='--chain-lint'", "sharness-full": "make -sC ./sharness prove PROVE_OPTS=-vf TEST_OPTS='-v --chain-lint --long'", "coverage": "yarn run unit --coverage", "flow": "flow", "lint": "eslint src config --max-warnings 0" }, "license": "MIT + Apache-2", "jest": { "collectCoverageFrom": [ "src/**/*.{js,jsx,mjs}" ], "setupFiles": [ "/config/polyfills.js", "/config/jest/setupJest.js" ], "testMatch": [ "/src/**/__tests__/**/*.{js,jsx,mjs}", "/src/**/?(*.)(spec|test).{js,jsx,mjs}" ], "testEnvironment": "node", "testURL": "http://localhost", "transform": { "^.+\\.(js|jsx|mjs)$": "/node_modules/babel-jest", "^.+\\.css$": "/config/jest/cssTransform.js", "^(?!.*\\.(js|jsx|mjs|css|json)$)": "/config/jest/fileTransform.js" }, "transformIgnorePatterns": [ "[/\\\\]node_modules[/\\\\].+\\.(js|jsx|mjs)$" ], "moduleNameMapper": { "^react-native$": "react-native-web" }, "moduleFileExtensions": [ "web.js", "mjs", "js", "json", "web.jsx", "jsx", "node" ] }, "babel": { "presets": [ "./config/babel" ] }, "files": [ "/bin", "/build" ] }