Files
arbpulse_github/package.json
T
Mauricio Barragan f4def0c214 Refactor API contracts to Zod, zod-to-openapi, and Scalar.
Replace hand-written OpenAPI and Swagger UI with schema-driven docs at /api-docs and Zod validation on request bodies.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-11 00:04:12 -06:00

52 lines
1.3 KiB
JSON

{
"name": "arb-pulse",
"version": "1.0.0",
"description": "Real-time BTC cross-exchange arbitrage detection & simulation bot (Kraken, Bybit, OKX, Binance)",
"type": "module",
"engines": {
"node": ">=20"
},
"scripts": {
"dev": "tsx watch src/index.ts",
"dev:web": "npm --prefix web run dev",
"start": "tsx src/index.ts",
"build": "npm --prefix web install && npm --prefix web run build",
"typecheck": "tsc --noEmit && npm --prefix web run typecheck",
"test": "node scripts/run-tests.mjs",
"lint": "eslint .",
"prepare": "husky"
},
"lint-staged": {
"src/**/*.ts": [
"eslint --fix",
"prettier --write"
],
"web/src/**/*.{ts,tsx}": [
"eslint --fix",
"prettier --write"
]
},
"dependencies": {
"@asteasolutions/zod-to-openapi": "^8.5.0",
"@scalar/express-api-reference": "^0.8.48",
"express": "^4.21.2",
"tsx": "^4.19.2",
"ws": "^8.18.0",
"zod": "^4.4.3"
},
"devDependencies": {
"@eslint/js": "^9.18.0",
"@types/express": "^4.17.21",
"@types/node": "^22.10.5",
"@types/ws": "^8.5.13",
"eslint": "^9.18.0",
"eslint-plugin-react-hooks": "^5.1.0",
"globals": "^15.14.0",
"husky": "^9.1.7",
"lint-staged": "^16.4.0",
"prettier": "^3.8.3",
"typescript": "^5.7.3",
"typescript-eslint": "^8.26.0"
}
}