{ "name": "cellxgene", "version": "0.15.0", "license": "MIT", "description": "cellxgene is a web application for the interactive exploration of single cell sequence data.", "repository": "https://github.com/chanzuckerberg/cellxgene", "scripts": { "clean": "rimraf build", "build": "npm run clean && webpack --config configuration/webpack/webpack.config.prod.js", "dev": "npm run clean && webpack --config configuration/webpack/webpack.config.dev.js", "fmt": "eslint --fix src", "lint": "eslint src" }, "engineStrict": true, "engines": { "npm": ">=3.0.0" }, "eslintConfig": { "extends": "./configuration/eslint/eslint.js" }, "eslintIgnore": [ "src/util/stateManager/matrix_generated.js" ], "resolutions": { "eslint-scope": "3.7.1" }, "dependencies": { "@blueprintjs/core": "^3.24.0", "@blueprintjs/icons": "^3.14.0", "@blueprintjs/select": "^3.12.0", "d3": "^4.10.0", "d3-scale-chromatic": "^1.5.0", "flatbuffers": "^1.11.0", "fuzzysort": "^1.1.4", "gl-mat4": "^1.2.0", "gl-matrix": "^3.3.0", "gl-vec3": "^1.1.3", "is-number": "^7.0.0", "lodash": "^4.17.15", "memoize-one": "^5.1.1", "react": "^16.13.1", "react-dom": "^16.13.1", "react-flip-toolkit": "7.0.6", "react-helmet": "^5.2.1", "react-icons": "^3.9.0", "react-redux": "^7.2.0", "redux": "^4.0.5", "redux-thunk": "^2.3.0", "regl": "^1.4.0" }, "devDependencies": { "@babel/core": "^7.9.0", "@babel/plugin-proposal-class-properties": "^7.8.3", "@babel/plugin-proposal-decorators": "^7.8.3", "@babel/plugin-proposal-export-namespace-from": "^7.8.3", "@babel/plugin-proposal-function-bind": "^7.8.3", "@babel/plugin-proposal-nullish-coalescing-operator": "^7.8.3", "@babel/plugin-proposal-optional-chaining": "^7.9.0", "@babel/plugin-transform-react-constant-elements": "^7.9.0", "@babel/plugin-transform-runtime": "^7.9.0", "@babel/preset-env": "^7.9.0", "@babel/preset-react": "^7.9.4", "@babel/register": "^7.9.0", "@babel/runtime": "^7.9.2", "babel-eslint": "^10.1.0", "babel-jest": "^25.2.6", "babel-loader": "^8.1.0", "babel-preset-modern-browsers": "^14.2.1", "chalk": "^4.0.0", "clean-webpack-plugin": "^3.0.0", "codecov": "^3.6.5", "connect-history-api-fallback": "^1.6.0", "copy-webpack-plugin": "^5.1.1", "css-loader": "^3.4.2", "eslint": "^6.8.0", "eslint-config-airbnb": "^18.0.1", "eslint-config-prettier": "^6.10.1", "eslint-loader": "^3.0.4", "eslint-plugin-filenames": "^1.3.2", "eslint-plugin-import": "^2.20.2", "eslint-plugin-jest": "^23.8.2", "eslint-plugin-jsx-a11y": "^6.2.3", "eslint-plugin-react": "^7.19.0", "eslint-plugin-react-hooks": "^2.5.1", "express": "^4.17.1", "favicons-webpack-plugin": "^3.0.1", "file-loader": "^6.0.0", "html-webpack-inline-source-plugin": "^1.0.0-beta.2", "html-webpack-plugin": "^4.0.0", "jest": "^25.2.7", "jest-puppeteer": "^4.4.0", "json-loader": "^0.5.7", "mini-css-extract-plugin": "^0.9.0", "puppeteer": "^2.1.1", "rimraf": "^3.0.2", "serve-favicon": "^2.5.0", "style-loader": "^1.1.3", "sw-precache-webpack-plugin": "^1.0.0", "url-loader": "^4.0.0", "webpack": "^4.42.1", "webpack-cli": "^3.3.11", "webpack-dev-middleware": "^3.7.2" }, "jest": { "testMatch": [ "**/__tests__/**/?(*.)(spec|test).js?(x)" ], "testURL": "http://localhost/", "setupFiles": [ "./__tests__/setupMissingGlobals.js" ], "coverageDirectory": "./coverage/", "collectCoverage": true }, "babel": { "env": { "test": { "presets": [ "@babel/preset-env", "@babel/preset-react" ], "plugins": [ "@babel/plugin-proposal-function-bind", [ "@babel/plugin-proposal-decorators", { "legacy": true } ], [ "@babel/plugin-proposal-class-properties", { "loose": true } ], "@babel/plugin-proposal-export-namespace-from", "@babel/plugin-transform-react-constant-elements", "@babel/plugin-transform-runtime", "@babel/plugin-proposal-optional-chaining", "@babel/plugin-proposal-nullish-coalescing-operator" ] } } } }