mirror of https://github.com/msgbyte/tailchat
You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
225 lines
7.2 KiB
JSON
225 lines
7.2 KiB
JSON
{
|
|
"description": "A foundation for scalable desktop apps",
|
|
"private": true,
|
|
"keywords": [
|
|
"electron",
|
|
"boilerplate",
|
|
"react",
|
|
"typescript",
|
|
"ts",
|
|
"sass",
|
|
"webpack",
|
|
"hot",
|
|
"reload"
|
|
],
|
|
"homepage": "https://github.com/electron-react-boilerplate/electron-react-boilerplate#readme",
|
|
"bugs": {
|
|
"url": "https://github.com/electron-react-boilerplate/electron-react-boilerplate/issues"
|
|
},
|
|
"repository": {
|
|
"type": "git",
|
|
"url": "git+https://github.com/electron-react-boilerplate/electron-react-boilerplate.git"
|
|
},
|
|
"license": "MIT",
|
|
"author": {
|
|
"name": "moonrailgun",
|
|
"email": "moonrailgun@gmail.com",
|
|
"url": "https://github.com/moonrailgun"
|
|
},
|
|
"contributors": [
|
|
{
|
|
"name": "Amila Welihinda",
|
|
"email": "amilajack@gmail.com",
|
|
"url": "https://github.com/amilajack"
|
|
}
|
|
],
|
|
"main": "./src/main/main.ts",
|
|
"scripts": {
|
|
"build": "concurrently \"yarn build:main\" \"yarn build:renderer\"",
|
|
"build:main": "cross-env NODE_ENV=production TS_NODE_TRANSPILE_ONLY=true webpack --config ./.erb/configs/webpack.config.main.prod.ts",
|
|
"build:renderer": "cross-env NODE_ENV=production TS_NODE_TRANSPILE_ONLY=true webpack --config ./.erb/configs/webpack.config.renderer.prod.ts",
|
|
"postinstall": "ts-node .erb/scripts/check-native-dep.js && electron-builder install-app-deps",
|
|
"lint": "cross-env NODE_ENV=development eslint . --ext .js,.jsx,.ts,.tsx",
|
|
"package": "cross-env DEBUG_PROD=true yarn package:nodebug --config.asar=false",
|
|
"package:all": "yarn package:nodebug -mwl",
|
|
"package:nodebug": "ts-node ./.erb/scripts/clean.js dist && yarn build && electron-builder build --publish never",
|
|
"rebuild": "electron-rebuild --parallel --types prod,dev,optional --module-dir release/app",
|
|
"dev": "cross-env FE_URL=http://127.0.0.1:11011 SERVICE_URL=http://127.0.0.1:11000 yarn start",
|
|
"dev:nightly": "cross-env FE_URL=http://nightly.paw.msgbyte.com SERVICE_URL=https://tailchat-nightly.moonrailgun.com/ yarn start",
|
|
"start": "ts-node ./.erb/scripts/check-port-in-use.js && yarn start:renderer",
|
|
"start:main": "cross-env NODE_ENV=development electronmon -r ts-node/register/transpile-only .",
|
|
"start:preload": "cross-env NODE_ENV=development TS_NODE_TRANSPILE_ONLY=true webpack --config ./.erb/configs/webpack.config.preload.dev.ts",
|
|
"start:renderer": "cross-env NODE_ENV=development TS_NODE_TRANSPILE_ONLY=true webpack serve --config ./.erb/configs/webpack.config.renderer.dev.ts",
|
|
"http-server": "ts-node test/http-server.ts",
|
|
"test": "jest"
|
|
},
|
|
"lint-staged": {
|
|
"*.{js,jsx,ts,tsx}": [
|
|
"cross-env NODE_ENV=development eslint --cache"
|
|
],
|
|
"*.json,.{eslintrc,prettierrc}": [
|
|
"prettier --ignore-path .eslintignore --parser json --write"
|
|
],
|
|
"*.{css,scss}": [
|
|
"prettier --ignore-path .eslintignore --single-quote --write"
|
|
],
|
|
"*.{html,md,yml}": [
|
|
"prettier --ignore-path .eslintignore --single-quote --write"
|
|
]
|
|
},
|
|
"browserslist": [],
|
|
"prettier": {
|
|
"singleQuote": true,
|
|
"overrides": [
|
|
{
|
|
"files": [
|
|
".prettierrc",
|
|
".eslintrc"
|
|
],
|
|
"options": {
|
|
"parser": "json"
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"jest": {
|
|
"moduleDirectories": [
|
|
"node_modules",
|
|
"release/app/node_modules"
|
|
],
|
|
"moduleFileExtensions": [
|
|
"js",
|
|
"jsx",
|
|
"ts",
|
|
"tsx",
|
|
"json"
|
|
],
|
|
"moduleNameMapper": {
|
|
"\\.(jpg|jpeg|png|gif|eot|otf|webp|svg|ttf|woff|woff2|mp4|webm|wav|mp3|m4a|aac|oga)$": "<rootDir>/.erb/mocks/fileMock.js",
|
|
"\\.(css|less|sass|scss)$": "identity-obj-proxy"
|
|
},
|
|
"setupFiles": [
|
|
"./.erb/scripts/check-build-exists.ts"
|
|
],
|
|
"testEnvironment": "jsdom",
|
|
"testEnvironmentOptions": {
|
|
"url": "http://localhost/"
|
|
},
|
|
"testPathIgnorePatterns": [
|
|
"release/app/dist"
|
|
],
|
|
"transform": {
|
|
"\\.(ts|tsx|js|jsx)$": "ts-jest"
|
|
}
|
|
},
|
|
"dependencies": {
|
|
"electron-debug": "^3.2.0",
|
|
"electron-is": "^3.0.0",
|
|
"electron-log": "^4.4.7",
|
|
"electron-screenshots": "^0.5.15",
|
|
"electron-serve": "^1.1.0",
|
|
"electron-updater": "^5.0.1",
|
|
"electron-window-state": "^5.0.3",
|
|
"express": "^4.18.1",
|
|
"get-port": "5.1.1",
|
|
"lodash": "^4.17.21",
|
|
"react": "^18.1.0",
|
|
"react-dom": "^18.1.0",
|
|
"react-router-dom": "^6.3.0",
|
|
"source-ref-loader": "^1.0.7"
|
|
},
|
|
"devDependencies": {
|
|
"@pmmmwh/react-refresh-webpack-plugin": "^0.5.6",
|
|
"@svgr/webpack": "^6.2.1",
|
|
"@teamsupercell/typings-for-css-modules-loader": "^2.5.1",
|
|
"@testing-library/jest-dom": "^5.16.4",
|
|
"@testing-library/react": "^13.2.0",
|
|
"@types/jest": "^27.5.1",
|
|
"@types/lodash": "^4.14.191",
|
|
"@types/node": "^17.0.42",
|
|
"@types/react": "^18.0.9",
|
|
"@types/react-dom": "^18.0.4",
|
|
"@types/react-test-renderer": "^18.0.0",
|
|
"@types/terser-webpack-plugin": "^5.0.4",
|
|
"@types/webpack-bundle-analyzer": "^4.4.1",
|
|
"@typescript-eslint/eslint-plugin": "^5.23.0",
|
|
"@typescript-eslint/parser": "^5.23.0",
|
|
"autoprefixer": "^10.4.7",
|
|
"browserslist-config-erb": "^0.0.3",
|
|
"chalk": "^4.1.2",
|
|
"concurrently": "^7.6.0",
|
|
"copy-webpack-plugin": "^11.0.0",
|
|
"core-js": "^3.22.5",
|
|
"cross-env": "^7.0.3",
|
|
"crypto-browserify": "^3.12.0",
|
|
"css-loader": "^5.2.6",
|
|
"css-minimizer-webpack-plugin": "^3.4.1",
|
|
"detect-port": "^1.3.0",
|
|
"dotenv": "^16.0.1",
|
|
"electron": "^18.2.3",
|
|
"electron-builder": "^23.0.3",
|
|
"electron-devtools-installer": "^3.2.0",
|
|
"electron-notarize": "^1.2.1",
|
|
"electron-rebuild": "^3.2.7",
|
|
"electronmon": "^2.0.2",
|
|
"esbuild-loader": "^2.19.0",
|
|
"eslint": "^8.15.0",
|
|
"eslint-config-airbnb-base": "^15.0.0",
|
|
"eslint-config-erb": "^4.0.3",
|
|
"eslint-import-resolver-typescript": "^2.7.1",
|
|
"eslint-import-resolver-webpack": "^0.13.2",
|
|
"eslint-plugin-compat": "^4.0.2",
|
|
"eslint-plugin-import": "^2.26.0",
|
|
"eslint-plugin-jest": "^26.2.2",
|
|
"eslint-plugin-jsx-a11y": "^6.5.1",
|
|
"eslint-plugin-promise": "^6.0.0",
|
|
"eslint-plugin-react": "^7.29.4",
|
|
"eslint-plugin-react-hooks": "^4.5.0",
|
|
"file-loader": "^6.2.0",
|
|
"html-webpack-plugin": "^5.5.0",
|
|
"https-browserify": "^1.0.0",
|
|
"identity-obj-proxy": "^3.0.0",
|
|
"jest": "27.5.1",
|
|
"jest-environment-jsdom": "27.5.1",
|
|
"less": "^4.1.3",
|
|
"less-loader": "^10.0.0",
|
|
"lint-staged": "^12.4.1",
|
|
"mini-css-extract-plugin": "^2.6.0",
|
|
"path-browserify": "^1.0.1",
|
|
"postcss-loader": "^7.0.0",
|
|
"prettier": "^2.6.2",
|
|
"react-refresh": "^0.13.0",
|
|
"react-test-renderer": "^18.1.0",
|
|
"rimraf": "^3.0.2",
|
|
"sass": "^1.51.0",
|
|
"sass-loader": "^12.6.0",
|
|
"stream-browserify": "^3.0.0",
|
|
"stream-http": "^3.2.0",
|
|
"style-loader": "^3.3.1",
|
|
"tailwindcss": "^2.2.4",
|
|
"terser-webpack-plugin": "^5.3.1",
|
|
"ts-jest": "27.1.4",
|
|
"ts-loader": "^9.3.0",
|
|
"ts-node": "^10.7.0",
|
|
"typescript": "^4.6.4",
|
|
"url": "^0.11.0",
|
|
"url-loader": "^4.1.1",
|
|
"webpack": "5.73.0",
|
|
"webpack-bundle-analyzer": "^4.5.0",
|
|
"webpack-cli": "^4.9.2",
|
|
"webpack-dev-server": "^4.9.0",
|
|
"webpack-merge": "^5.8.0"
|
|
},
|
|
"devEngines": {
|
|
"node": ">=14.x",
|
|
"npm": ">=7.x"
|
|
},
|
|
"electronmon": {
|
|
"patterns": [
|
|
"!**/**",
|
|
"src/main/*"
|
|
],
|
|
"logLevel": "quiet"
|
|
}
|
|
}
|