nestjs-cluster-throttle
Version:
Enterprise-grade rate limiting module for NestJS with Redis support, multiple strategies, and cluster mode
131 lines (130 loc) • 3.91 kB
JSON
{
"name": "nestjs-cluster-throttle",
"version": "1.0.9",
"description": "Enterprise-grade rate limiting module for NestJS with Redis support, multiple strategies, and cluster mode",
"main": "dist/index.js",
"types": "dist/index.d.ts",
"files": [
"dist",
"README.md",
"LICENSE"
],
"scripts": {
"build": "tsc -p tsconfig.build.json",
"prebuild": "rimraf dist",
"test": "jest",
"test:watch": "jest --watch",
"test:cov": "jest --coverage",
"test:debug": "node --inspect-brk -r tsconfig-paths/register -r ts-node/register node_modules/.bin/jest --runInBand",
"test:e2e": "jest --config ./test/jest-e2e.json",
"lint": "eslint \"{src,test}/**/*.ts\" --fix",
"format": "prettier --write \"src/**/*.ts\" \"test/**/*.ts\"",
"format:check": "prettier --check \"src/**/*.ts\" \"test/**/*.ts\"",
"prepublishOnly": "npm run lint && npm run format:check && npm run build && npm test",
"prepare": "husky",
"release:patch": "standard-version --release-as patch",
"release:minor": "standard-version --release-as minor",
"release:major": "standard-version --release-as major",
"release:alpha": "standard-version --prerelease alpha",
"release:beta": "standard-version --prerelease beta",
"release:dry": "standard-version --dry-run",
"changelog": "conventional-changelog -p angular -i CHANGELOG.md -s -r 0",
"commit": "git-cz"
},
"keywords": [
"nestjs",
"rate-limiting",
"rate-limiter",
"throttle",
"throttling",
"cluster",
"redis",
"distributed",
"rate-limit",
"guard",
"middleware",
"api-protection",
"ddos-protection",
"request-limiting",
"token-bucket",
"sliding-window",
"fixed-window"
],
"author": {
"name": "Roman Dobrynin",
"email": "roman.dobrynin@gmail.com"
},
"contributors": [
{
"name": "Roman Dobrynin",
"email": "roman.dobrynin@gmail.com"
}
],
"license": "MIT",
"repository": {
"type": "git",
"url": "https://github.com/rdobrynin/nestjs-cluster-throttle.git"
},
"bugs": {
"url": "https://github.com/rdobrynin/nestjs-cluster-throttle/issues"
},
"homepage": "https://github.com/rdobrynin/nestjs-cluster-throttle#readme",
"engines": {
"node": ">=14.0.0",
"npm": ">=6.0.0"
},
"peerDependencies": {
"@nestjs/common": "^9.0.0 || ^10.0.0 || ^11.0.0",
"@nestjs/core": "^9.0.0 || ^10.0.0 || ^11.0.0",
"reflect-metadata": "^0.1.13 || ^0.2.0",
"rxjs": "^7.0.0"
},
"overrides": {
"@typescript-eslint/typescript-estree": "^7.0.0"
},
"dependencies": {
"ioredis": "^5.3.2"
},
"devDependencies": {
"@commitlint/cli": "^20.2.0",
"@commitlint/config-conventional": "^20.2.0",
"@nestjs/common": "^11.0.0",
"@nestjs/core": "^11.0.0",
"@nestjs/platform-express": "^11.0.0",
"@nestjs/testing": "^11.0.0",
"@semantic-release/changelog": "^6.0.3",
"@semantic-release/git": "^10.0.1",
"@semantic-release/github": "^9.2.6",
"@semantic-release/npm": "^11.0.3",
"semantic-release": "^22.0.12",
"@types/jest": "^29.5.0",
"@types/node": "^20.0.0",
"@types/supertest": "^6.0.3",
"@typescript-eslint/eslint-plugin": "^7.0.0",
"@typescript-eslint/parser": "^7.0.0",
"commitizen": "^4.3.1",
"cz-conventional-changelog": "^3.3.0",
"eslint": "^8.0.0",
"eslint-config-prettier": "^9.0.0",
"eslint-plugin-prettier": "^5.0.0",
"husky": "^9.1.7",
"jest": "^29.5.0",
"prettier": "^3.0.0",
"reflect-metadata": "^0.2.0",
"rimraf": "^5.0.0",
"rxjs": "^7.8.0",
"standard-version": "^9.5.0",
"supertest": "^7.1.4",
"ts-jest": "^29.1.0",
"ts-node": "^10.9.0",
"typescript": "^5.3.0"
},
"publishConfig": {
"access": "public",
"registry": "https://registry.npmjs.org/"
},
"np": {
"yarn": false,
"contents": "dist"
}
}