{
    "name": "cyberchef",
    "version": "10.19.2",
    "description": "The Cyber Swiss Army Knife for encryption, encoding, compression and data analysis.",
    "author": "n1474335 <n1474335@gmail.com>",
    "homepage": "https://gchq.github.io/CyberChef",
    "copyright": "Crown copyright 2016",
    "license": "Apache-2.0",
    "keywords": [
        "cipher",
        "cypher",
        "encode",
        "decode",
        "encrypt",
        "decrypt",
        "base64",
        "xor",
        "charset",
        "hex",
        "encoding",
        "format",
        "cybersecurity",
        "data manipulation",
        "data analysis"
    ],
    "repository": {
        "type": "git",
        "url": "https://github.com/gchq/CyberChef/"
    },
    "main": "src/node/wrapper.js",
    "exports": {
        "import": "./src/node/index.mjs",
        "require": "./src/node/wrapper.js"
    },
    "bugs": "https://github.com/gchq/CyberChef/issues",
    "browserslist": [
        "Chrome >= 50",
        "Firefox >= 38",
        "node >= 16"
    ],
    "devDependencies": {
        "@babel/core": "^7.24.7",
        "@babel/eslint-parser": "^7.24.7",
        "@babel/plugin-syntax-import-assertions": "^7.24.7",
        "@babel/plugin-transform-runtime": "^7.24.7",
        "@babel/preset-env": "^7.24.7",
        "@babel/runtime": "^7.24.7",
        "@codemirror/commands": "^6.6.0",
        "@codemirror/language": "^6.10.2",
        "@codemirror/search": "^6.5.6",
        "@codemirror/state": "^6.4.1",
        "@codemirror/view": "^6.28.0",
        "autoprefixer": "^10.4.19",
        "babel-loader": "^9.1.3",
        "babel-plugin-dynamic-import-node": "^2.3.3",
        "babel-plugin-transform-builtin-extend": "1.1.2",
        "base64-loader": "^1.0.0",
        "cli-progress": "^3.12.0",
        "colors": "^1.4.0",
        "copy-webpack-plugin": "^12.0.2",
        "core-js": "^3.37.1",
        "css-loader": "7.1.2",
        "eslint": "^9.4.0",
        "eslint-plugin-jsdoc": "^48.2.9",
        "globals": "^15.4.0",
        "grunt": "^1.6.1",
        "grunt-chmod": "~1.1.1",
        "grunt-concurrent": "^3.0.0",
        "grunt-contrib-clean": "~2.0.1",
        "grunt-contrib-connect": "^4.0.0",
        "grunt-contrib-copy": "~1.0.0",
        "grunt-contrib-watch": "^1.1.0",
        "grunt-eslint": "^25.0.0",
        "grunt-exec": "~3.0.0",
        "grunt-webpack": "^6.0.0",
        "grunt-zip": "^1.0.0",
        "html-webpack-plugin": "^5.6.0",
        "imports-loader": "^5.0.0",
        "mini-css-extract-plugin": "2.9.0",
        "modify-source-webpack-plugin": "^4.1.0",
        "nightwatch": "^3.6.3",
        "postcss": "^8.4.38",
        "postcss-css-variables": "^0.19.0",
        "postcss-import": "^16.1.0",
        "postcss-loader": "^8.1.1",
        "prompt": "^1.3.0",
        "sitemap": "^8.0.0",
        "terser": "^5.31.1",
        "webpack": "^5.91.0",
        "webpack-bundle-analyzer": "^4.10.2",
        "webpack-dev-server": "5.0.4",
        "webpack-node-externals": "^3.0.0",
        "worker-loader": "^3.0.8"
    },
    "dependencies": {
        "@astronautlabs/amf": "^0.0.6",
        "@babel/polyfill": "^7.12.1",
        "@bitcoinerlab/secp256k1": "^1.1.1",
        "@blu3r4y/lzma": "^2.3.3",
        "@wavesenterprise/crypto-gost-js": "^2.1.0-RC1",
        "@xmldom/xmldom": "^0.8.10",
        "argon2-browser": "^1.18.0",
        "arrive": "^2.4.1",
        "avsc": "^5.7.7",
        "bcryptjs": "^2.4.3",
        "bignumber.js": "^9.1.2",
        "bip32": "^5.0.0-rc.0",
        "blakejs": "^1.2.1",
        "bootstrap": "4.6.2",
        "bootstrap-colorpicker": "^3.4.0",
        "bootstrap-material-design": "^4.1.3",
        "browserify-zlib": "^0.2.0",
        "bson": "^4.7.2",
        "buffer": "^6.0.3",
        "cbor": "9.0.2",
        "chi-squared": "^1.1.0",
        "chromedriver": "^129.0.0",
        "codepage": "^1.15.0",
        "crypto-api": "^0.8.5",
        "crypto-browserify": "^3.12.0",
        "crypto-js": "^4.2.0",
        "ctph.js": "0.0.5",
        "d3": "7.9.0",
        "d3-hexbin": "^0.2.2",
        "diff": "^5.2.0",
        "es6-promisify": "^7.0.0",
        "escodegen": "^2.1.0",
        "esprima": "^4.0.1",
        "exif-parser": "^0.1.12",
        "fernet": "^0.4.0",
        "file-saver": "^2.0.5",
        "flat": "^6.0.1",
        "geodesy": "1.1.3",
        "highlight.js": "^11.9.0",
        "ieee754": "^1.2.1",
        "jimp": "^0.22.12",
        "jquery": "3.7.1",
        "js-crc": "^0.2.0",
        "js-sha3": "^0.9.3",
        "jsesc": "^3.0.2",
        "json5": "^2.2.3",
        "jsonpath-plus": "^9.0.0",
        "jsonwebtoken": "8.5.1",
        "jsqr": "^1.4.0",
        "jsrsasign": "^11.1.0",
        "kbpgp": "2.1.15",
        "libbzip2-wasm": "0.0.4",
        "libyara-wasm": "^1.2.1",
        "lodash": "^4.17.21",
        "loglevel": "^1.9.1",
        "loglevel-message-prefix": "^3.0.0",
        "lz-string": "^1.5.0",
        "lz4js": "^0.2.0",
        "markdown-it": "^14.1.0",
        "moment": "^2.30.1",
        "moment-timezone": "^0.5.45",
        "ngeohash": "^0.6.3",
        "node-forge": "^1.3.1",
        "node-md6": "^0.1.0",
        "nodom": "^2.4.0",
        "notepack.io": "^3.0.1",
        "ntlm": "^0.1.3",
        "nwmatcher": "^1.4.4",
        "otp": "0.1.3",
        "path": "^0.12.7",
        "popper.js": "^1.16.1",
        "process": "^0.11.10",
        "protobufjs": "^7.3.1",
        "qr-image": "^3.2.0",
        "reflect-metadata": "^0.2.2",
        "rison": "^0.1.1",
        "scryptsy": "^2.1.0",
        "snackbarjs": "^1.1.0",
        "sortablejs": "^1.15.2",
        "split.js": "^1.6.5",
        "ssdeep.js": "0.0.3",
        "stream-browserify": "^3.0.0",
        "tesseract.js": "5.1.0",
        "ua-parser-js": "^1.0.38",
        "unorm": "^1.6.0",
        "utf8": "^3.0.0",
        "vkbeautify": "^0.99.3",
        "xpath": "0.0.34",
        "xregexp": "^5.1.1",
        "zlibjs": "^0.3.1"
    },
    "scripts": {
        "start": "npx grunt dev",
        "build": "npx grunt prod",
        "node": "npx grunt node",
        "repl": "node --experimental-modules --experimental-json-modules --experimental-specifier-resolution=node --no-experimental-fetch --no-warnings src/node/repl.mjs",
        "test": "npx grunt configTests && node --experimental-modules --experimental-json-modules --no-warnings --no-deprecation --openssl-legacy-provider --no-experimental-fetch tests/node/index.mjs && node --experimental-modules --experimental-json-modules --no-warnings --no-deprecation --openssl-legacy-provider --no-experimental-fetch --trace-uncaught tests/operations/index.mjs",
        "testnodeconsumer": "npx grunt testnodeconsumer",
        "testui": "npx grunt testui",
        "testuidev": "npx nightwatch --env=dev",
        "lint": "npx grunt lint",
        "postinstall": "npx grunt exec:fixCryptoApiImports && npx grunt exec:fixSnackbarMarkup && npx grunt exec:fixJimpModule",
        "newop": "node --experimental-modules --experimental-json-modules src/core/config/scripts/newOperation.mjs",
        "minor": "node --experimental-modules --experimental-json-modules src/core/config/scripts/newMinorVersion.mjs",
        "getheapsize": "node -e 'console.log(`node heap limit = ${require(\"v8\").getHeapStatistics().heap_size_limit / (1024 * 1024)} Mb`)'",
        "setheapsize": "export NODE_OPTIONS=--max_old_space_size=2048"
    }
}
