{ "name": "n8n-monorepo", "version": "2.15.0", "private": true, "engines": { "node": ">=22.16", "pnpm": ">=10.22.0" }, "packageManager": "pnpm@10.32.1", "scripts": { "prepare": "node scripts/prepare.mjs", "preinstall": "node scripts/block-npm-install.js", "build": "turbo run build", "build:n8n": "node scripts/build-n8n.mjs", "build:deploy": "node scripts/build-n8n.mjs", "build:docker": "node scripts/build-n8n.mjs && node scripts/dockerize-n8n.mjs", "build:docker:coverage": "BUILD_WITH_COVERAGE=true node scripts/build-n8n.mjs && node scripts/dockerize-n8n.mjs", "build:docker:scan": "node scripts/build-n8n.mjs && node scripts/dockerize-n8n.mjs && node scripts/scan-n8n-image.mjs", "build:docker:clean": "TURBO_FORCE=true node scripts/build-n8n.mjs && DOCKER_BUILD_NO_CACHE=true DOCKER_BUILD_BASE_IMAGE=true node scripts/dockerize-n8n.mjs", "build:docker:test": "node scripts/build-n8n.mjs && node scripts/dockerize-n8n.mjs && turbo run test:container:standard --filter=n8n-playwright", "typecheck": "turbo typecheck", "dev": "turbo run dev --parallel --env-mode=loose --filter=!@n8n/design-system --filter=!@n8n/chat --filter=!@n8n/task-runner", "dev:be": "turbo run dev --parallel --env-mode=loose --filter=!@n8n/design-system --filter=!@n8n/chat --filter=!@n8n/task-runner --filter=!n8n-editor-ui", "dev:ai": "turbo run dev --parallel --env-mode=loose --filter=@n8n/nodes-langchain --filter=n8n --filter=n8n-core", "dev:fe": "run-p start \"dev:fe:editor --filter=@n8n/design-system\"", "dev:fe:editor": "turbo run dev --parallel --env-mode=loose --filter=n8n-editor-ui", "dev:e2e": "pnpm --filter=n8n-playwright dev --ui", "clean": "turbo run clean", "reset": "node scripts/ensure-zx.mjs && zx scripts/reset.mjs", "format": "turbo run format && node scripts/format.mjs", "format:check": "turbo run format:check", "lint": "turbo run lint", "lint:styles": "turbo run lint:styles", "lint:styles:fix": "turbo run lint:styles:fix", "lint:affected": "turbo run lint --affected", "lint:fix": "turbo run lint:fix", "optimize-svg": "find ./packages -name '*.svg' ! -name 'pipedrive.svg' -print0 | xargs -0 -P16 -L20 npx svgo", "generate:third-party-licenses": "node scripts/generate-third-party-licenses.mjs", "setup-backend-module": "node scripts/ensure-zx.mjs && zx scripts/backend-module/setup.mjs", "start": "node scripts/os-normalize.mjs --dir packages/cli/bin n8n", "test": "JEST_JUNIT_CLASSNAME={filepath} turbo run test", "test:ci": "turbo run test --continue --concurrency=1", "test:ci:frontend": "turbo run test --continue --filter='./packages/frontend/**'", "test:ci:backend": "turbo run test --continue --concurrency=1 --filter='!./packages/frontend/**'", "test:ci:backend:unit": "turbo run test:unit --continue --filter='!./packages/frontend/**'", "test:ci:backend:integration": "turbo run test:integration --continue --concurrency=1 --filter='!./packages/frontend/**'", "test:affected": "turbo run test --affected --concurrency=1", "test:with:docker": "pnpm --filter=n8n-playwright test:container:standard", "test:show:report": "pnpm --filter=n8n-playwright exec playwright show-report", "watch": "turbo run watch --concurrency=32", "webhook": "./packages/cli/bin/n8n webhook", "worker": "./packages/cli/bin/n8n worker" }, "devDependencies": { "@babel/preset-env": "^7.26.0", "@biomejs/biome": "^1.9.0", "@dotenvx/dotenvx": "^1.40.0", "@n8n/eslint-config": "workspace:*", "@types/jest": "^29.5.3", "@types/node": "*", "@types/supertest": "^6.0.3", "babel-plugin-transform-import-meta": "^2.3.2", "cross-env": "^7.0.3", "eslint": "catalog:", "jest": "^29.6.2", "jest-environment-jsdom": "^29.6.2", "jest-expect-message": "^1.1.3", "jest-junit": "^16.0.0", "jest-mock": "^29.6.2", "jest-mock-extended": "^3.0.4", "lefthook": "^1.7.15", "license-checker": "^25.0.1", "nock": "^14.0.1", "nodemon": "^3.0.1", "npm-run-all2": "^7.0.2", "p-limit": "^3.1.0", "rimraf": "^5.0.1", "supertest": "^7.1.1", "ts-jest": "^29.1.1", "tsc-alias": "^1.8.10", "tsc-watch": "^6.2.0", "turbo": "2.8.9", "typescript": "*", "zx": "^8.8.5" }, "pnpm": { "onlyBuiltDependencies": [ "isolated-vm", "sqlite3" ], "overrides": { "@isaacs/brace-expansion": "5.0.1", "libphonenumber-js": "npm:empty-npm-package@1.0.0", "@browserbasehq/stagehand": "npm:empty-npm-package@1.0.0", "sharp": "npm:empty-npm-package@1.0.0", "ast-types": "0.16.1", "@azure/identity": "4.13.0", "@lezer/common": "^1.2.0", "@mistralai/mistralai": "^1.10.0", "@n8n/typeorm>@sentry/node": "catalog:sentry", "@types/node": "^20.17.50", "axios": "1.13.5", "chokidar": "4.0.3", "esbuild": "^0.25.0", "expr-eval@2.0.2": "npm:expr-eval-fork@3.0.0", "multer": "^2.1.1", "prebuild-install": "7.1.3", "pug": "^3.0.3", "semver": "^7.5.4", "tar-fs": "2.1.4", "tslib": "^2.6.2", "tsconfig-paths": "^4.2.0", "typescript": "catalog:", "vue-tsc": "^2.2.8", "gaxios": ">=7.1.1", "google-gax": "^4.3.7", "ws": ">=8.17.1", "brace-expansion@1": "1.1.12", "brace-expansion@2": "2.0.2", "date-fns": "2.30.0", "date-fns-tz": "2.0.0", "form-data": "4.0.4", "tmp": "0.2.4", "nodemailer": "7.0.11", "validator": "13.15.26", "zod": "3.25.67", "js-yaml": "4.1.1", "node-forge": "1.3.2", "body-parser": "2.2.1", "glob@10": "10.5.0", "glob@7": "7.2.3", "jws@3": "3.2.2", "jws@4": "4.0.1", "qs@6": "6.14.2", "@smithy/config-resolver": ">=4.4.0", "@rudderstack/rudder-sdk-node@<=3.0.0": "3.0.0", "diff": "8.0.3", "undici@6": "^6.23.0", "undici@7": "^7.18.2", "tar": "^7.5.11", "hono": "4.12.7", "ajv@6": "6.14.0", "ajv@7": "8.18.0", "ajv@8": "8.18.0", "bn.js@4": "5.2.3", "bn.js@5": "5.2.3", "langsmith": ">=0.4.6", "lodash-es": "4.17.23", "word-wrap@<=1.2.4": "1.2.4", "minimatch@<=5.1.8": "5.1.8", "minimatch@10": "10.2.3", "@hono/node-server": "1.19.10", "express-rate-limit": "8.2.2", "underscore": "1.13.8", "fast-xml-parser": "5.3.8" }, "patchedDependencies": { "bull@4.16.4": "patches/bull@4.16.4.patch", "pdfjs-dist@5.3.31": "patches/pdfjs-dist@5.3.31.patch", "pkce-challenge@5.0.0": "patches/pkce-challenge@5.0.0.patch", "@types/express-serve-static-core@5.0.6": "patches/@types__express-serve-static-core@5.0.6.patch", "@types/ws@8.18.1": "patches/@types__ws@8.18.1.patch", "@types/uuencode@0.0.3": "patches/@types__uuencode@0.0.3.patch", "vue-tsc@2.2.8": "patches/vue-tsc@2.2.8.patch", "element-plus@2.4.3": "patches/element-plus@2.4.3.patch", "js-base64": "patches/js-base64.patch", "ics": "patches/ics.patch", "minifaker": "patches/minifaker.patch", "z-vue-scan": "patches/z-vue-scan.patch", "@lezer/highlight": "patches/@lezer__highlight.patch", "v-code-diff": "patches/v-code-diff.patch", "assert@2.1.0": "patches/assert@2.1.0.patch" } } }