jitsi-meet-electron/package.json
csett86 9b1e3904ac
refactor: reduce shipped artifact size (#589)
This moves all webpacked deps to be automatically included from the asar
and thus reduces the shipped binary by 14MB on Windows, 16 MB on Mac and
12MB on Linux. The installed size on mac is reduced by 105 MB.

Previously all the dependencies were webpacked and minified in the asar in the
build folder and in its full installed version unused under node_modules.

Only keep the dependencies that are externally required in the node-modules
folder.

Signed-off-by: Christoph Settgast <csett86@web.de>
2021-06-27 20:58:48 +02:00

187 lines
5.4 KiB
JSON

{
"name": "jitsi-meet-electron",
"version": "2.8.7",
"description": "Electron application for Jitsi Meet",
"main": "./build/main.js",
"productName": "Jitsi Meet",
"scripts": {
"start": "webpack --config ./webpack.main.js --mode development && concurrently \"npm:watch\" \"electron ./build/main.js\"",
"clean": "rm -rf node_modules build dist",
"lint": "eslint . && flow",
"build": "webpack --config ./webpack.main.js --mode production && webpack --config ./webpack.renderer.js --mode production",
"dist": "npm run build && electron-builder",
"postinstall": "patch-package && electron-builder install-app-deps",
"watch": "webpack --config ./webpack.renderer.js --mode development --watch --watch-poll"
},
"engines": {
"node": ">=12.0.0"
},
"build": {
"appId": "org.jitsi.jitsi-meet",
"productName": "Jitsi Meet",
"generateUpdatesFilesForAllChannels": true,
"afterPack": "./linux-sandbox-fix.js",
"files": [
"build",
"resources",
"!app",
"!main.js"
],
"mac": {
"artifactName": "jitsi-meet.${ext}",
"target": [
{
"arch": "universal",
"target": "dmg"
},
{
"arch": "universal",
"target": "zip"
}
],
"category": "public.app-category.video",
"darkModeSupport": true,
"hardenedRuntime": true,
"entitlements": "entitlements.mac.plist",
"entitlementsInherit": "entitlements.mac.plist",
"asarUnpack": "**/*.node",
"extendInfo": {
"NSCameraUsageDescription": "Jitsi Meet requires access to your camera in order to make video-calls.",
"NSMicrophoneUsageDescription": "Jitsi Meet requires access to your microphone in order to make calls (audio/video).",
"LSMultipleInstancesProhibited": true
}
},
"mas": {
"entitlements": "resources/entitlements.mas.plist",
"entitlementsInherit": "resources/entitlements.mas.inherit.plist",
"hardenedRuntime": false
},
"linux": {
"artifactName": "jitsi-meet-${arch}.${ext}",
"category": "VideoConference;AudioVideo;Audio;Video;Network",
"description": "Jitsi Meet Desktop App",
"executableName": "jitsi-meet",
"target": [
{
"arch": "x64",
"target": "AppImage"
},
{
"arch": "x64",
"target": "deb"
}
]
},
"win": {
"artifactName": "jitsi-meet.${ext}",
"target": [
{
"arch": [
"ia32",
"x64"
],
"target": "nsis"
}
]
},
"directories": {
"buildResources": "resources"
},
"protocols": [
{
"name": "jitsi-protocol",
"role": "Viewer",
"schemes": [
"jitsi-meet"
]
}
]
},
"pre-commit": [
"lint"
],
"repository": {
"type": "git",
"url": "git://github.com/jitsi/jitsi-meet-electron"
},
"keywords": [
"jingle",
"webrtc",
"xmpp",
"electron",
"jitsi-meet"
],
"author": "Jitsi Team <support@jitsi.org>",
"readmeFilename": "README.md",
"license": "Apache-2.0",
"dependencies": {
"electron-debug": "^3.2.0",
"electron-reload": "^1.5.0",
"jitsi-meet-electron-utils": "github:jitsi/jitsi-meet-electron-utils#v2.0.16"
},
"devDependencies": {
"@atlaskit/button": "^10.1.3",
"@atlaskit/css-reset": "^3.0.8",
"@atlaskit/droplist": "^7.0.19",
"@atlaskit/field-text": "^7.1.0",
"@atlaskit/icon": "^15.0.3",
"@atlaskit/navigation": "^33.3.10",
"@atlaskit/onboarding": "^6.2.0",
"@atlaskit/page": "^8.0.12",
"@atlaskit/panel": "^0.3.5",
"@atlaskit/spinner": "^9.0.13",
"@atlaskit/theme": "^7.0.5",
"@atlaskit/toggle": "^5.0.15",
"@babel/core": "7.9.0",
"@babel/plugin-proposal-class-properties": "7.8.3",
"@babel/plugin-proposal-export-namespace-from": "7.8.3",
"@babel/plugin-transform-flow-strip-types": "7.9.0",
"@babel/preset-env": "7.9.0",
"@babel/preset-flow": "7.9.0",
"@babel/preset-react": "7.9.4",
"@jitsi/js-utils": "^1.0.6",
"@svgr/webpack": "5.4.0",
"babel-eslint": "10.0.3",
"babel-loader": "8.1.0",
"concurrently": "5.1.0",
"css-loader": "3.5.0",
"electron": "12.0.12",
"electron-builder": "22.10.5",
"electron-context-menu": "^2.5.0",
"electron-is-dev": "^1.2.0",
"electron-log": "^4.3.2",
"electron-react-devtools": "0.5.3",
"electron-store": "^5.2.0",
"electron-updater": "^4.3.8",
"electron-window-state": "^5.0.3",
"eslint": "6.5.1",
"eslint-config-jitsi": "github:jitsi/eslint-config-jitsi#1.0.2",
"eslint-plugin-flowtype": "4.7.0",
"eslint-plugin-import": "2.20.2",
"eslint-plugin-jsdoc": "22.1.0",
"eslint-plugin-react": "7.19.0",
"file-loader": "6.0.0",
"flow-bin": "0.109.0",
"history": "^4.10.1",
"html-webpack-plugin": "4.0.4",
"i18next": "^19.9.2",
"moment": "^2.29.1",
"mousetrap": "^1.6.5",
"patch-package": "6.2.2",
"react": "^16.14.0",
"react-dom": "^16.14.0",
"react-i18next": "^11.8.12",
"react-redux": "^5.1.2",
"react-router-redux": "^5.0.0-alpha.9",
"redux": "^4.0.5",
"redux-logger": "^3.0.6",
"redux-persist": "^5.10.0",
"redux-persist-electron-storage": "^2.1.0",
"source-map-support": "^0.5.19",
"style-loader": "1.1.3",
"styled-components": "^3.4.10",
"webpack": "4.42.1",
"webpack-cli": "3.3.11"
}
}