{ "name": "ocean-node", "version": "4.6.0", "description": "Ocean Node is used to run all core services in the Ocean stack", "author": "Ocean Protocol Foundation", "license": "Apache-2.0", "type": "module", "main": "index.js", "engines": { "node": ">=24" }, "bugs": { "url": "https://github.com/oceanprotocol/ocean-node/issues" }, "scripts": { "build": "npm run clean && npm run build:tsc", "build:tsc": "tsc --sourceMap", "quickstart": "bash scripts/ocean-node-quickstart.sh", "setupEnv": "bash -c './src/helpers/scripts/setupNodeEnv.sh && source .env'", "build-tests:tsc": "tsc --sourceMap --sourceRoot ./src/test && cp ./src/test/.env.test ./dist/test && cp ./src/test/.env.test2 ./dist/test && cp ./src/test/config.json $HOME/config.json", "client": "mkdir -p ./dist/helpers/scripts/output && node dist/helpers/scripts/clientExample.js", "clean": "if [ -d ./dist ]; then find ./dist -mindepth 1 -delete; fi", "clean:all": "rm -rf ./dist/ ./doc/ ./.nyc_output", "build-tests": "rm -rf ./dist/test && npm run build-tests:tsc", "start": "node --import ./dist/telemetry/otel.js --max-old-space-size=28784 --trace-warnings --experimental-specifier-resolution=node dist/index.js", "lint": "eslint . && npm run type-check", "lint:fix": "eslint . --fix", "format": "prettier --parser typescript --ignore-path .gitignore --write '**/*.{js,jsx,ts,tsx}'", "type-check": "tsc --noEmit", "check-nonce": "npm run build && node dist/helpers/scripts/checkNonceTracking.js", "mocha": "mocha --node-env=test --config .mocharc.json", "mocha-light": "mocha --node-env=test --config .mocharc.json --exclude \"./dist/test/integration/compute.test.js\"", "test": "npm run lint && npm run test:unit:cover && npm run test:integration:cover", "test:unit": "npm run build-tests && npm run mocha \"./dist/test/unit/**/*.test.js\"", "test:integration": "npm run build-tests && npm run mocha \"./dist/test/integration/**/*.test.js\"", "test:computeunit": "npm run build-tests && npm run mocha \"./dist/test/unit/compute.test.js\"", "test:computeintegration": "npm run build-tests && npm run mocha \"./dist/test/integration/compute.test.js\"", "test:servicesintegration": "npm run build-tests && npm run mocha \"./dist/test/integration/services.test.js\"", "test:indexer": "npm run build-tests && npm run mocha \"./dist/test/integration/indexer.test.js\"", "test:integration:light": "npm run build-tests && npm run mocha-light \"./dist/test/integration/**/*.test.js\"", "test:unit:cover": "nyc --report-dir coverage/unit npm run test:unit", "test:integration:cover": "nyc --report-dir coverage/integration --no-clean npm run test:integration", "logs": "./scripts/logs.sh", "setup-ocean-cli": "git clone https://github.com/oceanprotocol/ocean-cli.git && cd ocean-cli && npm install && npm run build", "test:k6-common": "npm run build-tests && K6_WEB_DASHBOARD=true K6_WEB_DASHBOARD_EXPORT=html-report.html", "test:smoke": "npm run test:k6-common k6 run -e TEST_TYPE=smoke \"./dist/test/performance/perf_test.js\"", "test:load": "npm run test:k6-common k6 run -e TEST_TYPE=load \"./dist/test/performance/perf_test.js\"", "test:stress": "npm run test:k6-common k6 run -e TEST_TYPE=stress \"./dist/test/performance/perf_test.js\"", "test:request:rate": "npm run test:k6-common && k6 run -e RATE=true \"./dist/test/performance/perf_test.js\"", "release": "release-it", "changelog": "auto-changelog -p" }, "dependencies": { "@aws-sdk/client-s3": "^3.1146.0", "@aws-sdk/lib-storage": "^3.1115.0", "@chainsafe/libp2p-noise": "^17.0.0", "@chainsafe/libp2p-yamux": "^8.0.1", "@elastic/elasticsearch": "^8.19.2", "@ipshipyard/libp2p-auto-tls": "^2.0.2", "@libp2p/autonat": "^3.0.28", "@libp2p/bootstrap": "^12.0.36", "@libp2p/circuit-relay-v2": "^4.2.17", "@libp2p/crypto": "^5.1.24", "@libp2p/dcutr": "^3.0.28", "@libp2p/http": "^2.0.6", "@libp2p/identify": "^4.1.14", "@libp2p/kad-dht": "^16.4.5", "@libp2p/keychain": "^6.1.8", "@libp2p/mdns": "^12.0.31", "@libp2p/peer-id": "^6.0.18", "@libp2p/ping": "^3.1.13", "@libp2p/tcp": "^11.0.28", "@libp2p/tls": "^3.1.10", "@libp2p/upnp-nat": "^4.0.28", "@libp2p/utils": "^7.4.2", "@libp2p/websockets": "^10.1.21", "@multiformats/multiaddr": "^13.0.3", "@oceanprotocol/contracts": "^2.9.0", "@oceanprotocol/ddo-js": "^1.0.0", "@opentelemetry/api": "^1.9.1", "@opentelemetry/exporter-metrics-otlp-http": "^0.221.0", "@opentelemetry/exporter-trace-otlp-http": "^0.221.0", "@opentelemetry/host-metrics": "^0.39.0", "@opentelemetry/instrumentation-express": "^0.69.0", "@opentelemetry/instrumentation-http": "^0.221.0", "@opentelemetry/instrumentation-runtime-node": "^0.34.0", "@opentelemetry/resources": "^2.12.0", "@opentelemetry/sdk-metrics": "^2.12.0", "@opentelemetry/sdk-node": "^0.221.0", "@opentelemetry/semantic-conventions": "^1.43.0", "base58-js": "^3.0.3", "basic-ftp": "^6.2.2", "cors": "^2.8.6", "datastore-level": "^13.0.1", "dockerode": "^5.0.1", "dotenv": "^17.4.2", "eciesjs": "^0.5.0", "eth-crypto": "^4.1.0", "ethers": "^6.17.0", "express": "^5.3.0", "ipaddr.js": "^2.5.0", "jsonwebtoken": "^9.0.3", "libp2p": "^3.3.10", "lodash": "^4.18.1", "lzma-purejs-requirejs": "^1.0.0", "multiformats": "^14.0.5", "node-cron": "^4.6.0", "p-limit": "^7.3.3", "tar": "^7.5.22", "tar-stream": "^3.2.0", "uint8arrays": "^6.1.1", "unique-names-generator": "^4.7.1", "url-join": "^5.0.0", "winston": "^3.19.0", "winston-daily-rotate-file": "^5.0.0", "winston-transport": "^4.6.0", "yazl": "^3.3.1", "zod": "^4.6.6" }, "optionalDependencies": { "koffi": "^3.1.6" }, "devDependencies": { "@eslint/js": "^10.0.1", "@types/chai": "^5.2.3", "@types/cors": "^2.8.19", "@types/dockerode": "^4.0.1", "@types/express": "^5.0.6", "@types/jsonwebtoken": "^9.0.10", "@types/lodash": "^4.17.25", "@types/mocha": "^10.0.10", "@types/node": "^26.2.0", "@types/sinon": "^22.0.0", "@types/tar-stream": "^3.1.4", "@types/yauzl": "^3.4.0", "@types/yazl": "^3.3.1", "auto-changelog": "^2.6.0", "chai": "^6.2.2", "eslint": "^10.8.1", "eslint-config-prettier": "^10.1.8", "eslint-plugin-prettier": "^5.5.6", "eslint-plugin-promise": "^7.3.0", "eslint-plugin-security": "^4.2.0", "globals": "^17.13.0", "mocha": "^12.0.3", "nyc": "^18.0.0", "prettier": "^3.9.10", "release-it": "^21.0.2", "sinon": "^22.1.0", "typescript": "^6.0.3", "yauzl": "^3.4.0", "typescript-eslint": "^8.71.0" }, "overrides": { "serialize-javascript": "^7.1.4", "ws": "^8.21.3" }, "release-it": { "hooks": { "after:bump": "npm run changelog" }, "plugins": {}, "git": { "tagName": "v${version}" }, "github": { "release": true }, "npm": { "publish": false } } }