{
  "name": "@bitwarden/desktop",
  "description": "A secure and free password manager for all of your devices.",
  "version": "2026.3.1",
  "keywords": [
    "bitwarden",
    "password",
    "vault",
    "password manager"
  ],
  "author": "Bitwarden Inc. <hello@bitwarden.com> (https://bitwarden.com)",
  "homepage": "https://bitwarden.com",
  "repository": {
    "type": "git",
    "url": "git+https://github.com/bitwarden/clients.git"
  },
  "license": "GPL-3.0",
  "scripts": {
    "postinstall": "electron-rebuild",
    "start": "cross-env ELECTRON_IS_DEV=0 ELECTRON_NO_UPDATER=1 electron ./build",
    "build-native-macos": "cd desktop_native && ./autofill_provider/build.sh && node build.js cross-platform",
    "build-native": "cd desktop_native && node build.js",
    "build": "concurrently -n Main,Rend,Prel -c yellow,cyan \"npm run build:main\" \"npm run build:renderer\" \"npm run build:preload\"",
    "build:dev": "concurrently -n Main,Rend,Prel -c yellow,cyan \"npm run build:main:dev\" \"npm run build:renderer:dev\" \"npm run build:preload:dev\"",
    "build:preload": "cross-env NODE_ENV=production webpack --config webpack.config.js --config-name preload",
    "build:preload:dev": "cross-env NODE_ENV=development webpack --config webpack.config.js --config-name preload",
    "build:preload:watch": "cross-env NODE_ENV=development webpack --config webpack.config.js --config-name preload --watch",
    "build:macos-extension:mac": "./desktop_native/autofill_provider/build.sh && node scripts/build-macos-extension.js mac",
    "build:macos-extension:mas": "./desktop_native/autofill_provider/build.sh && node scripts/build-macos-extension.js mas",
    "build:macos-extension:masdev": "./desktop_native/autofill_provider/build.sh && node scripts/build-macos-extension.js mas-dev",
    "build:main": "cross-env NODE_ENV=production webpack --config webpack.config.js --config-name main",
    "build:main:dev": "cross-env NODE_ENV=development webpack --config webpack.config.js --config-name main",
    "build:main:watch": "npm run build-native && cross-env NODE_ENV=development webpack --config webpack.config.js --config-name main --watch",
    "build:renderer": "cross-env NODE_ENV=production webpack --config webpack.config.js --config-name renderer",
    "build:renderer:dev": "cross-env NODE_ENV=development webpack --config webpack.config.js --config-name renderer",
    "build:renderer:watch": "cross-env NODE_ENV=development webpack --config webpack.config.js --config-name renderer --watch",
    "electron": "node ./scripts/start.js",
    "electron:ignore": "node ./scripts/start.js --ignore-certificate-errors",
    "flatpak:dev": "npm run clean:dist && electron-builder --dir -p never && flatpak-builder --force-clean --install --user ../../.flatpak/ ./resources/com.bitwarden.desktop.devel.yaml && flatpak run com.bitwarden.desktop",
    "clean:dist": "rimraf ./dist",
    "pack:dir": "npm run clean:dist && electron-builder --dir -p never",
    "pack:lin:flatpak": "flatpak-builder --repo=../../.flatpak-repo ../../.flatpak  ./resources/com.bitwarden.desktop.devel.yaml --install-deps-from=flathub --force-clean &&  flatpak build-bundle ../../.flatpak-repo/ ./dist/com.bitwarden.desktop.flatpak com.bitwarden.desktop",
    "pack:lin": "npm run clean:dist && electron-builder --linux --x64 -p never && export SNAP_FILE=$(realpath ./dist/bitwarden_*.snap) && unsquashfs -d ./dist/tmp-snap/ $SNAP_FILE && mkdir -p ./dist/tmp-snap/meta/polkit/ && cp ./resources/com.bitwarden.desktop.policy  ./dist/tmp-snap/meta/polkit/polkit.com.bitwarden.desktop.policy && rm $SNAP_FILE && snap pack --compression=lzo ./dist/tmp-snap/ && mv ./*.snap ./dist/ && rm -rf ./dist/tmp-snap/ && cp ./resources/com.bitwarden.desktop.desktop ./dist/linux-unpacked/resources && cp -r ./resources/icons ./dist/linux-unpacked/resources && tar -czvf ./dist/bitwarden_desktop_x64.tar.gz -C ./dist/linux-unpacked/ .",
    "pack:lin:arm64": "npm run clean:dist && electron-builder --linux --arm64 -p never && export SNAP_FILE=$(realpath ./dist/bitwarden_*.snap) && unsquashfs -d ./dist/tmp-snap/ $SNAP_FILE && mkdir -p ./dist/tmp-snap/meta/polkit/ && cp ./resources/com.bitwarden.desktop.policy  ./dist/tmp-snap/meta/polkit/polkit.com.bitwarden.desktop.policy && rm $SNAP_FILE && snap pack --compression=lzo ./dist/tmp-snap/ && mv ./*.snap ./dist/ && rm -rf ./dist/tmp-snap/ && cp ./resources/com.bitwarden.desktop.desktop ./dist/linux-arm64-unpacked/resources && cp -r ./resources/icons ./dist/linux-arm64-unpacked/resources && tar -czvf ./dist/bitwarden_desktop_arm64.tar.gz -C ./dist/linux-arm64-unpacked/ .",
    "pack:mac": "npm run clean:dist && electron-builder --mac --universal -p never",
    "pack:mac:with-extension": "npm run clean:dist && npm run build:macos-extension:mac && electron-builder --mac --universal -p never",
    "pack:mac:arm64": "npm run clean:dist && electron-builder --mac --arm64 -p never",
    "pack:mac:mas": "npm run clean:dist && npm run build:macos-extension:mas && electron-builder --mac mas --universal -p never",
    "pack:mac:masdev": "npm run clean:dist && electron-builder --mac mas-dev --universal -p never -c.mac.identity=null -c.mas.identity=$CSC_NAME -c.mas.provisioningProfile=bitwarden_desktop_developer_id.provisionprofile -c.mas.entitlements=resources/entitlements.mas.autofill-enabled.plist",
    "pack:local:mac": "npm run clean:dist && npm run build:macos-extension:masdev && electron-builder --mac mas-dev --universal -p never -c.mac.provisioningProfile=\"\" -c.mas.provisioningProfile=\"\"",
    "pack:win": "npm run clean:dist && electron-builder --win --x64 --arm64 --ia32 -p never",
    "pack:win:beta": "npm run clean:dist && electron-builder --config electron-builder.beta.json --win --x64 --arm64 --ia32 -p never",
    "pack:win:ci": "npm run clean:dist && electron-builder --win --x64 --arm64 --ia32 -p never",
    "dist:dir": "npm run build && npm run pack:dir",
    "dist:lin": "npm run build && npm run pack:lin",
    "dist:lin:arm64": "npm run build && npm run pack:lin:arm64",
    "dist:mac": "npm run build && npm run pack:mac",
    "dist:mac:mas": "npm run build && npm run pack:mac:mas",
    "dist:mac:masdev": "npm run build && npm run pack:mac:masdev",
    "dist:win": "npm run build && npm run pack:win",
    "dist:win:ci": "npm run build && npm run pack:win:ci",
    "publish:lin": "npm run build && npm run clean:dist && electron-builder --linux --x64 -p always",
    "publish:mac": "npm run build && npm run clean:dist && electron-builder --mac -p always",
    "publish:mac:mas": "npm run dist:mac:mas && npm run upload:mas",
    "publish:win": "npm run build && npm run clean:dist && electron-builder --win --x64 --arm64 --ia32 -p always",
    "publish:win:dev": "npm run build:dev && npm run clean:dist && electron-builder --win --x64 --arm64 --ia32 -p always",
    "upload:mas": "xcrun altool --upload-app --type osx --file \"$(find ./dist/mas-universal/Bitwarden*.pkg)\" --apiKey $APP_STORE_CONNECT_AUTH_KEY --apiIssuer $APP_STORE_CONNECT_TEAM_ISSUER",
    "test": "jest",
    "test:watch": "jest --watch",
    "test:watch:all": "jest --watchAll"
  }
}
