{ "name": "xread", "scripts": { "lint": "eslint --ext .js,.ts .", "format": "prettier --write .", "format:check": "prettier --check .", "security:audit": "node ./scripts/security-audit-report.cjs", "test:ci": "node --test tests/open-source-build.test.cjs tests/integrity-check.test.cjs tests/prepare-licensed-assets.test.cjs tests/github-automation.test.cjs tests/container-runtime-regressions.test.cjs tests/security-governance.test.cjs", "prepare:licensed-assets": "node ./scripts/prepare-licensed-assets.cjs", "build": "node ./integrity-check.cjs && tsc -p .", "build:watch": "tsc -p . -w", "build:clean": "node -e \"require('fs').rmSync('./build',{recursive:true,force:true})\"", "serve": "npm run build && npm run start", "debug": "npm run build && npm run start", "start": "node ./build/stand-alone/crawl.js", "dry-run": "NODE_ENV=dry-run node ./build/stand-alone/search.js" }, "engines": { "node": ">=18" }, "main": "build/index.js", "dependencies": { "@esm2cjs/normalize-url": "^8.0.0", "@koa/bodyparser": "^5.1.2", "@mozilla/readability": "^0.6.0", "@napi-rs/canvas": "^1.0.0", "@types/turndown": "^5.0.6", "@xmldom/xmldom": "^0.9.10", "archiver": "^8.0.0", "axios": "^1.16.1", "bcrypt": "^6.0.0", "busboy": "^1.6.0", "civkit": "^0.10.0-7e6bf49", "cors": "^2.8.6", "dayjs": "^1.11.20", "htmlparser2": "^9.0.0", "jose": "^6.2.3", "koa": "^2.16.4", "koa-compress": "^5.2.1", "langdetect": "^0.2.1", "linkedom": "^0.18.12", "lodash": "^4.18.1", "lru-cache": "^11.5.0", "maxmind": "^4.3.29", "minio": "^8.0.7", "pdfjs-dist": "^4.10.38", "puppeteer": "^23.3.0", "puppeteer-extra": "^3.3.6", "puppeteer-extra-plugin-block-resources": "^2.4.3", "robots-parser": "^3.0.1", "set-cookie-parser": "^2.7.2", "simple-zstd": "^1.4.2", "stripe": "^11.11.0", "svg2png-wasm": "^1.4.1", "tiktoken": "^1.0.22", "tld-extract": "^2.1.0", "turndown": "^7.2.4", "turndown-plugin-gfm": "^1.0.2", "undici": "^8.3.0" }, "devDependencies": { "@types/archiver": "^7.0.0", "@types/bcrypt": "^6.0.0", "@types/busboy": "^1.5.4", "@types/cors": "^2.8.19", "@types/koa": "^2.15.0", "@types/koa-compress": "^4.0.7", "@types/lodash": "^4.17.24", "@types/node": "^25.6.2", "@types/set-cookie-parser": "^2.4.7", "@types/xmldom": "^0.1.34", "@typescript-eslint/eslint-plugin": "^8.59.2", "@typescript-eslint/parser": "^8.57.2", "eslint": "^10.3.0", "pino-pretty": "^13.1.3", "prettier": "^3.8.3", "typescript": "^5.9.3" }, "overrides": { "ajv": "^6.14.0", "express": "^4.22.1", "body-parser": "^1.20.4", "qs": "^6.15.0", "path-to-regexp": "^0.1.13", "minimatch": "^3.1.5", "minio": "^8.0.7", "fast-xml-parser": "^5.7.1", "nodemailer": "^8.0.5", "smtp-server": "^3.18.3", "readdir-glob": { "minimatch": "^5.1.9" }, "civkit": { "minimatch": "^10.2.4" } }, "private": true, "exports": { ".": "./build/index.js" } }