{"_id":"@algonomia/nestjs-sdk","name":"@algonomia/nestjs-sdk","dist-tags":{"latest":"1.0.1"},"versions":{"1.0.1":{"name":"@algonomia/nestjs-sdk","version":"1.0.1","main":"dist/index.js","types":"dist/index.d.ts","scripts":{"build":"tsc --build --clean && tsc","test":"jest"},"keywords":[],"author":{"name":"Algonomia - Pierre COTE","email":"pierre.cote@algonomia.com"},"contributors":[{"name":"Algonomia - Youssef BALMA","email":"youssef.balma@algonomia.com"},{"name":"Algonomia - Yannick XU","email":"yannick.xu@algonomia.com"}],"license":"LGPLv3","description":"Reusable NestJS infrastructure: monitoring, validation, caching, swagger, auth utilities","repository":{"type":"git","url":"git+https://github.com/Algonomia/packages.git","directory":"packages/nestjs-sdk"},"publishConfig":{"access":"public"},"dependencies":{"@opentelemetry/api":"^1.9.0","@opentelemetry/exporter-metrics-otlp-http":"^0.212.0","@opentelemetry/exporter-trace-otlp-http":"^0.212.0","@opentelemetry/instrumentation-express":"^0.60.0","@opentelemetry/instrumentation-http":"^0.212.0","@opentelemetry/instrumentation-nestjs-core":"^0.58.0","@opentelemetry/instrumentation-pg":"^0.64.0","@opentelemetry/instrumentation-pino":"^0.58.0","@opentelemetry/resources":"^2.5.1","@opentelemetry/sdk-metrics":"^2.5.1","@opentelemetry/sdk-node":"^0.212.0","@opentelemetry/semantic-conventions":"^1.40.0","cache-manager":"^7.0.0","pino":"^10.0.0","pino-abstract-transport":"^2.0.0","pino-opentelemetry-transport":"^3.0.0"},"peerDependencies":{"@algonomia/ts-shared":"^1.1.0","@nestjs/common":"^11.0.0","@nestjs/cache-manager":"^3.0.0","@nestjs/swagger":"^11.0.0","express":"^4.0.0 || ^5.0.0","nestjs-zod":"^5.0.0","zod":"^4.0.0"},"devDependencies":{"@algonomia/ts-shared":"workspace:^","@nestjs/common":"^11.1.14","@nestjs/cache-manager":"^3.1.0","@nestjs/swagger":"^11.2.6","@nestjs/testing":"^11.1.14","@types/express":"^5.0.6","@types/jest":"^30.0.0","@types/node":"^25.2.0","express":"^5.1.0","jest":"^30.0.0","nestjs-zod":"^5.1.1","ts-jest":"^29.4.0","typescript":"^5.9.3","zod":"^4.3.6"},"jest":{"moduleFileExtensions":["js","json","ts"],"rootDir":"src","testRegex":".*\\.spec\\.ts$","transform":{"^.+\\.ts$":"ts-jest"},"testEnvironment":"node"},"gitHead":"86830ea5593a6ee2adb92c65968e83d41f4f205d","_id":"@algonomia/nestjs-sdk@1.0.1","bugs":{"url":"https://github.com/Algonomia/packages/issues"},"homepage":"https://github.com/Algonomia/packages#readme","_nodeVersion":"24.15.0","_npmVersion":"11.12.1","dist":{"integrity":"sha512-Z9qlQ7c9eUPngaueETf2uQh4T8qolhSj9t3LK/dROP1rUnzQoiNu4kWwEbSalmS9+mx7IO3ofSSWGwM4XZqZrw==","shasum":"7158bf7386455b854a271f1686d940f836d3fdab","tarball":"https://registry.npmjs.org/@algonomia/nestjs-sdk/-/nestjs-sdk-1.0.1.tgz","fileCount":65,"unpackedSize":91429,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIBtYBbKCWD2nWbRGuIT0gFb4swQa8DQKK/ztZSkmiWe3AiEA/k2tH8o5vxtNGkwJQ7rk/I4g1cbec4M1Q7cJ7gZpXGk="}]},"_npmUser":{"name":"brice.guillaume","email":"brice.guillaume@algonomia.com"},"directories":{},"maintainers":[{"name":"brice.guillaume","email":"brice.guillaume@algonomia.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/nestjs-sdk_1.0.1_1777378755339_0.8623220357094772"},"_hasShrinkwrap":false}},"time":{"created":"2026-04-28T12:19:15.228Z","1.0.1":"2026-04-28T12:19:15.479Z","modified":"2026-04-28T12:19:15.733Z"},"maintainers":[{"name":"brice.guillaume","email":"brice.guillaume@algonomia.com"}],"description":"Reusable NestJS infrastructure: monitoring, validation, caching, swagger, auth utilities","homepage":"https://github.com/Algonomia/packages#readme","keywords":[],"repository":{"type":"git","url":"git+https://github.com/Algonomia/packages.git","directory":"packages/nestjs-sdk"},"contributors":[{"name":"Algonomia - Youssef BALMA","email":"youssef.balma@algonomia.com"},{"name":"Algonomia - Yannick XU","email":"yannick.xu@algonomia.com"}],"author":{"name":"Algonomia - Pierre COTE","email":"pierre.cote@algonomia.com"},"bugs":{"url":"https://github.com/Algonomia/packages/issues"},"license":"LGPLv3","readme":"# @algonomia/nestjs-sdk\n\nReusable NestJS infrastructure: monitoring, validation, caching, swagger, auth utilities.\n\n## Installation\n\n```bash\nnpm install @algonomia/nestjs-sdk\n```\n\nOpenTelemetry peer dependencies are optional — install only if you need tracing/metrics.\n\n## What's included\n\n- **Auth** — `SdkAuthUser` base type (extend in your app for app-specific user fields)\n- **Monitoring** — Logger (`LoggerModule`, `PinoLoggerService`, `LoggerMiddleware`), error handling (`HttpExceptionFilter`, `LoggedHttpException`), telemetry (`MetricsMiddleware`, tracing presets), audit (`AuditTime`)\n- **Cache** — `CustomCache` decorator\n- **Concurrency** — `PreventConcurrency` decorator\n- **Validation** — `ZodValidationPipe`, `AlgoValidatorsPipe`, `AlgoValidatorsFromCallbackPipe`, `FormDataIntFieldsPipe`\n- **Swagger** — `GetWithDoc`, `PostWithDoc`, `Schema` decorators\n- **Injector** — `AppInjector` (global injector reference)\n\n## Build\n\n```bash\nnpm run build\n```\n","readmeFilename":"README.md","_rev":"1-ff36739c0b9e7f38c711e5717afc591d"}