{ "name": "Responsively-App", "productName": "ResponsivelyApp", "version": "0.7.0", "description": "A developer-friendly browser for developing responsive web apps", "scripts": { "build": "concurrently \"yarn build-main\" \"yarn build-renderer\"", "build-dll": "cross-env NODE_ENV=development webpack --config ./configs/webpack.config.renderer.dev.dll.babel.js --colors", "build-e2e": "cross-env E2E_BUILD=true yarn build", "build-main": "cross-env NODE_ENV=production webpack --config ./configs/webpack.config.main.prod.babel.js --colors", "build-renderer": "cross-env NODE_ENV=production webpack --config ./configs/webpack.config.renderer.prod.babel.js --colors", "dev": "cross-env START_HOT=1 node -r @babel/register ./internals/scripts/CheckPortInUse.js && cross-env START_HOT=1 yarn start-renderer-dev", "flow": "flow", "flow-typed": "rimraf flow-typed/npm && flow-typed install --overwrite || true", "lint": "cross-env NODE_ENV=development eslint --cache --format=pretty .", "lint-fix": "yarn --silent lint --fix; exit 0", "lint-styles": "stylelint --ignore-path .eslintignore '**/*.*(css|scss)' --syntax scss", "lint-styles-fix": "yarn --silent lint-styles --fix; exit 0", "package": "yarn build && electron-builder build --publish never", "package-all": "yarn build && electron-builder build -mwl", "publish-all": "yarn build && electron-builder build -mwl --publish always", "package-ci": "yarn postinstall && yarn build && electron-builder build -mwl --publish always", "package-linux": "yarn build && electron-builder build --linux", "publish-linux": "yarn build && electron-builder build --linux --publish always", "package-mac": "yarn build && electron-builder build --mac", "publish-mac": "yarn build && electron-builder build --mac --publish always", "package-win": "yarn build && electron-builder build --win --x64", "publish-win": "yarn build && electron-builder build --win --x64 --publish always", "postinstall": "electron-builder install-app-deps && yarn build-dll", "postlint-fix": "prettier --ignore-path .eslintignore --single-quote --write '**/*.{*{js,jsx,json},babelrc,eslintrc,prettierrc,stylelintrc}'", "postlint-styles-fix": "prettier --ignore-path .eslintignore --single-quote --write '**/*.{css,scss}'", "precommit": "lint-staged", "prestart": "yarn build", "start": "cross-env NODE_ENV=production electron ./app/main.prod.js", "start-main-dev": "cross-env HOT=1 NODE_ENV=development electron -r @babel/register ./app/main.dev.js", "start-renderer-dev": "cross-env NODE_ENV=development webpack-dev-server --config configs/webpack.config.renderer.dev.babel.js", "test": "cross-env NODE_ENV=test BABEL_DISABLE_CACHE=1 jest", "test-all": "yarn lint && yarn flow && yarn build && yarn test && yarn build-e2e && yarn test-e2e", "test-e2e": "node -r @babel/register ./internals/scripts/CheckBuiltsExist.js && cross-env NODE_ENV=test testcafe electron:./ ./test/e2e/HomePage.e2e.js", "test-e2e-live": "node -r @babel/register ./internals/scripts/CheckBuiltsExist.js && cross-env NODE_ENV=test testcafe-live electron:./ ./test/e2e/HomePage.e2e.js", "test-watch": "yarn test --watch" }, "lint-staged": { "*.{js,jsx}": [ "cross-env NODE_ENV=development eslint --cache --format=pretty", "prettier --ignore-path .eslintignore --single-quote --write", "git add" ], "{*.json,.{babelrc,eslintrc,prettierrc,stylelintrc}}": [ "prettier --ignore-path .eslintignore --parser json --write", "git add" ], "*.{css,scss}": [ "stylelint --ignore-path .eslintignore --syntax scss --fix", "prettier --ignore-path .eslintignore --single-quote --write", "git add" ], "*.{yml,md}": [ "prettier --ignore-path .eslintignore --single-quote --write", "git add" ] }, "main": "./app/main.prod.js", "build": { "afterSign": "scripts/notarize.js", "productName": "ResponsivelyApp", "appId": "app.responsively", "files": [ "app/preload.js", "app/imageWorker.js", "lib", "app/dist/", "resources/icons", "app/app.html", "app/shortcuts.html", "app/main.prod.js", "app/main.prod.js.map", "package.json" ], "dmg": { "sign": false, "contents": [ { "x": 130, "y": 220 }, { "x": 410, "y": 220, "type": "link", "path": "/Applications" } ] }, "mac": { "hardenedRuntime": true, "gatekeeperAssess": false, "category": "public.app-category.developer-tools", "entitlements": "build/entitlements.mac.plist", "entitlementsInherit": "build/entitlements.mac.plist", "extendInfo": { "CFBundleURLTypes": [ { "CFBundleURLSchemes": [ "responsively" ], "CFBundleURLName": "app.responsively" } ] }, "icon": "resources/icon.icns", "target": [ "dmg" ] }, "win": { "target": [ "nsis" ] }, "linux": { "target": [ "AppImage" ], "category": "Development" }, "directories": { "buildResources": "resources", "output": "release" }, "publish": { "provider": "github" } }, "repository": { "type": "git", "url": "https://github.com/manojVivek/responsively-app.git" }, "author": { "name": "Responsively", "email": "p.manoj.vivek@gmail.com" }, "contributors": [], "license": "MIT", "bugs": {}, "keywords": [], "homepage": "", "jest": { "testURL": "http://localhost/", "moduleNameMapper": { "\\.(jpg|jpeg|png|gif|eot|otf|webp|svg|ttf|woff|woff2|mp4|webm|wav|mp3|m4a|aac|oga)$": "/internals/mocks/fileMock.js", "\\.(css|less|sass|scss)$": "identity-obj-proxy" }, "moduleFileExtensions": [ "js", "jsx", "json" ], "transform": { "^.+\\.jsx?$": "babel-jest" }, "setupFiles": [ "./internals/scripts/CheckBuiltsExist.js" ] }, "devDependencies": { "@babel/core": "^7.1.6", "@babel/plugin-proposal-class-properties": "^7.1.0", "@babel/plugin-proposal-decorators": "^7.1.6", "@babel/plugin-proposal-do-expressions": "^7.0.0", "@babel/plugin-proposal-export-default-from": "^7.0.0", "@babel/plugin-proposal-export-namespace-from": "^7.0.0", "@babel/plugin-proposal-function-bind": "^7.0.0", "@babel/plugin-proposal-function-sent": "^7.1.0", "@babel/plugin-proposal-json-strings": "^7.0.0", "@babel/plugin-proposal-logical-assignment-operators": "^7.0.0", "@babel/plugin-proposal-nullish-coalescing-operator": "^7.0.0", "@babel/plugin-proposal-numeric-separator": "^7.0.0", "@babel/plugin-proposal-optional-chaining": "^7.0.0", "@babel/plugin-proposal-pipeline-operator": "^7.0.0", "@babel/plugin-proposal-throw-expressions": "^7.0.0", "@babel/plugin-syntax-dynamic-import": "^7.0.0", "@babel/plugin-syntax-import-meta": "^7.0.0", "@babel/plugin-transform-classes": "^7.5.5", "@babel/plugin-transform-react-constant-elements": "^7.0.0", "@babel/plugin-transform-react-inline-elements": "^7.0.0", "@babel/preset-env": "^7.1.6", "@babel/preset-flow": "^7.0.0", "@babel/preset-react": "^7.0.0", "@babel/register": "^7.0.0", "babel-core": "7.0.0-bridge.0", "babel-eslint": "^10.0.1", "babel-jest": "^23.6.0", "babel-loader": "^8.0.4", "babel-plugin-dev-expression": "^0.2.1", "babel-plugin-transform-es2015-classes": "^6.24.1", "babel-plugin-transform-react-remove-prop-types": "^0.4.20", "chalk": "^2.4.1", "concurrently": "^4.1.0", "connected-react-router": "^6.5.2", "cross-env": "^5.2.0", "cross-spawn": "^6.0.5", "css-loader": "^1.0.1", "detect-port": "^1.3.0", "electron": "^8.4.0", "electron-builder": "^22.6.1", "electron-devtools-installer": "^3.1.1", "enzyme": "^3.7.0", "enzyme-adapter-react-16": "^1.7.0", "enzyme-to-json": "^3.3.4", "eslint": "^5.9.0", "eslint-config-airbnb": "^17.1.0", "eslint-config-prettier": "^3.3.0", "eslint-formatter-pretty": "^2.0.0", "eslint-import-resolver-webpack": "^0.10.1", "eslint-plugin-compat": "^2.6.3", "eslint-plugin-flowtype": "^3.2.0", "eslint-plugin-import": "^2.14.0", "eslint-plugin-jest": "^22.0.0", "eslint-plugin-jsx-a11y": "6.1.2", "eslint-plugin-promise": "^4.0.1", "eslint-plugin-react": "^7.11.1", "eslint-plugin-testcafe": "^0.2.1", "fbjs-scripts": "^1.0.1", "file-loader": "^2.0.0", "flow-bin": "^0.77.0", "flow-runtime": "^0.17.0", "flow-typed": "^2.5.1", "husky": "^1.1.4", "identity-obj-proxy": "^3.0.0", "jest": "^23.6.0", "lint-staged": "^8.1.0", "mini-css-extract-plugin": "^0.4.4", "node-sass": "^4.10.0", "opencollective-postinstall": "^2.0.1", "optimize-css-assets-webpack-plugin": "^5.0.1", "prettier": "^1.15.2", "react-test-renderer": "^16.6.3", "redux-logger": "^3.0.6", "rimraf": "^2.6.2", "sass-loader": "^7.1.0", "sinon": "^7.1.1", "spectron": "^5.0.0", "style-loader": "^0.23.1", "stylelint": "^9.8.0", "stylelint-config-prettier": "^4.0.0", "stylelint-config-standard": "^18.2.0", "terser-webpack-plugin": "^1.1.0", "testcafe": "^0.23.2", "testcafe-browser-provider-electron": "0.0.11", "testcafe-live": "^0.1.4", "testcafe-react-selectors": "^3.0.0", "url-loader": "^1.1.2", "webpack": "^4.26.0", "webpack-bundle-analyzer": "^3.4.1", "webpack-cli": "^3.1.2", "webpack-dev-server": "^3.8.0", "webpack-merge": "^4.1.4", "yarn": "^1.12.3" }, "dependencies": { "@fortawesome/fontawesome-free": "^5.5.0", "@material-ui/core": "^4.3.2", "@material-ui/icons": "^4.2.1", "@material-ui/lab": "^4.0.0-alpha.26", "@sentry/electron": "^1.3.0", "bluebird": "^3.5.5", "browser-sync": "^2.26.7", "chokidar": "^3.4.0", "classnames": "^2.2.6", "core-js": "2", "devtron": "^1.4.0", "dotenv": "^8.1.0", "electron-cookies": "heap/electron-cookies", "electron-debug": "^3.1.0", "electron-log": "^4.2.1", "electron-notarize": "^0.3.0", "electron-settings": "^3.2.0", "electron-timber": "^0.5.1", "electron-updater": "^4.3.1", "flwww": "^2.0.10", "history": "^4.7.2", "jimp": "^0.12.1", "lodash.debounce": "^4.0.8", "merge-img": "^2.1.3", "mousetrap": "^1.6.5", "promise-worker": "^2.0.1", "pubsub.js": "^1.5.2", "re-resizable": "^6.4.0", "react": "^16.12.0", "react-beautiful-dnd": "^11.0.5", "react-dom": "^16.12.0", "react-hot-loader": "^4.8", "react-redux": "^7.1.0", "react-resizable": "^1.10.1", "react-router": "^5.0.1", "react-router-dom": "^5.0.1", "react-select": "^3.1.0", "react-switch": "^5.0.1", "react-tabs": "^3.0.0", "react-toastify": "^5.3.2", "redux": "^4.0.4", "redux-thunk": "^2.3.0", "source-map-support": "^0.5.9", "validator": "^13.1.1" }, "devEngines": { "node": ">=7.x", "npm": ">=4.x", "yarn": ">=0.21.3" }, "browserslist": "electron 9.0.0", "resolutions": { "node-gyp": "^6.1.0", "node-pre-gyp": "^0.14.0" } }