Backend Dependencies¶
Core Dependencies¶
Framework and Core Libraries¶
- @nestjs/common: ^10.0.0
- Core NestJS framework providing decorators, pipes, and filters
- @nestjs/core: ^10.4.18
- Core NestJS runtime for dependency injection and module system
- @nestjs/platform-express: ^10.4.18
- Express integration for HTTP server handling
- @nestjs/config: ^3.1.1
- Configuration module for managing environment variables
- @nestjs/websockets: ^10.4.18
- WebSocket integration for real-time communication
- @nestjs/platform-socket.io: ^10.4.18
- Socket.IO adapter for WebSockets
- @nestjs/platform-ws: ^10.4.18
- WebSocket adapter for NestJS
- @nestjs/microservices: ^10.4.18
- Microservices support for NestJS
- @nestjs/event-emitter: ^2.1.1
- Event emitter for NestJS applications
- @nestjs/mongoose: ^10.1.0
- MongoDB integration for NestJS
- @nestjs/axios: ^4.0.0
- Axios HTTP client integration for NestJS
TypeScript and Runtime¶
- typescript: ^5.3.3
- TypeScript language support and compiler
- reflect-metadata: ^0.2.1
- Metadata reflection API for TypeScript decorators
- rxjs: ^7.8.1
- Reactive Extensions for JavaScript, used for event handling and streams
Authentication¶
- @nestjs/jwt: ^11.0.0
- JWT implementation for secure authentication
- @nestjs/passport: ^11.0.5
- Authentication middleware based on Passport
- passport: ^0.7.0
- Authentication middleware for Node.js
- passport-jwt: ^4.0.1
- Passport strategy for JWT authentication
Queue Management¶
- @nestjs/bull: ^10.2.3
- Bull queue integration for NestJS
- bull: ^4.16.5
- Redis-based queue for background job processing
- bullmq: ^5.53.2
- Modern Redis-based queue for Node.js
Database and ORM¶
- mongoose: ^8.12.1
- MongoDB object data modeling
- mongodb: ^6.14.2
- MongoDB driver
- drizzle-orm: ^0.36.4
- TypeScript ORM for SQL databases
- pg: ^8.13.1
- PostgreSQL client
- mssql: ^11.0.1
- Microsoft SQL Server client
Redis¶
- @liaoliaots/nestjs-redis: ^10.0.0
- Redis module for NestJS
- ioredis: ^5.3.2
- Redis client for Node.js
Azure Integration¶
- @azure/storage-blob: ^12.17.0
- Azure Blob Storage client for document storage
- @azure/ai-form-recognizer: ^5.0.0
- Azure Form Recognizer for document parsing
- @azure/cognitiveservices-computervision: ^8.2.0
- Azure Computer Vision for image analysis
- @azure/openai: ^2.0.0
- Azure OpenAI service client for AI functionalities
- @azure/core-auth: ^1.9.0
- Core authentication library for Azure services
- @azure/core-rest-pipeline: ^1.18.2
- REST request pipeline for Azure services
- @azure/identity: ^4.8.0
- Authentication library for Azure identity
- @azure/monitor-query: ^1.3.1
- Azure Monitor query client
- @azure/ms-rest-js: ^2.7.0
- Azure REST client runtime
AI and LLM Integration¶
- @langchain/anthropic: ^0.2.0
- LangChain integration for Anthropic models
- @langchain/azure-openai: ^0.0.11
- Azure OpenAI integration for LangChain
- @langchain/community: ^0.2.0
- Community extensions for LangChain
- @langchain/core: ^0.2.36
- Core LangChain functionality
- @langchain/openai: ^0.2.0
- LangChain integration for OpenAI models
- @langchain/pinecone: ^0.0.3
- Pinecone integration for LangChain vector stores
- @pinecone-database/pinecone: ^2.0.0
- Pinecone vector database client
- openai: ^4.26.0
- OpenAI API client library
Document Processing¶
- libreoffice-convert: ^1.6.1
- LibreOffice document conversion
- llama-parse: ^0.1.0
- Document parsing library
- mammoth: ^1.9.0
- DOCX to HTML conversion
- mupdf: ^1.2.0
- PDF processing library
- pdf-lib: ^1.17.1
- Library for creating and modifying PDF documents
- pdf-parse: ^1.1.1
- Library for extracting text from PDF documents
- sharp: ^0.33.5
- Image processing library
Utilities¶
- axios: ^1.9.0
- HTTP client
- class-transformer: ^0.5.1
- Object transformation
- class-validator: ^0.14.1
- Object validation
- dotenv: ^16.4.1
- Environment variable loading
- form-data: ^4.0.1
- Form data handling
- p-queue: ^8.1.0
- Promise queue with concurrency control
- short-uuid: ^5.2.0
- Short UUID generation
- uuid: ^9.0.1
- UUID generation
- ws: ^8.16.0
- WebSocket implementation
- zod-to-json-schema: ^3.24.3
- Convert Zod schemas to JSON Schema
Real-time Collaboration¶
- yjs: ^13.5.42
- Shared data types for collaborative editing
- y-websocket: ^2.1.0
- WebSocket provider for Yjs
- y-protocols: ^1.0.5
- Communication protocols for Yjs
- lib0: ^0.2.52
- Utility library for Yjs
- socket.io: ^4.8.1
- Real-time bidirectional event-based communication
- ws: ^8.16.0
- WebSocket implementation for Node.js
Document Processing¶
- llama-parse: ^0.1.0
- Document parsing library
- pdf-lib: ^1.17.1
- Library for creating and modifying PDF documents
- pdf-parse: ^1.1.1
- Library for extracting text from PDF documents
- sharp: ^0.33.5
- Image processing library
- libreoffice-convert: ^1.6.1
- LibreOffice document conversion
- mammoth: ^1.9.0
- DOCX to HTML conversion
- mupdf: ^1.2.0
- PDF processing library
Job Processing¶
- @nestjs/bull: ^11.0.2
- Bull queue integration for NestJS
- bull: ^4.16.5
- Queue system with Redis backend
- p-queue: ^8.1.0
- Promise queue with concurrency control
Validation and Transformation¶
- class-validator: ^0.14.1
- Decorator-based validation for classes
- class-transformer: ^0.5.1
- Class transformation and serialisation
- zod-to-json-schema: ^3.24.3
- Convert Zod schemas to JSON Schema
Utilities¶
- uuid: ^9.0.1
- UUID generation
- short-uuid: ^5.2.0
- Shorter UUIDs
- axios: ^1.7.9
- HTTP client for making requests
- dotenv: ^16.4.1
- Loading environment variables from .env files
- form-data: ^4.0.1
- Form data handling for multipart requests
Development Dependencies¶
NestJS Development Tools¶
- @nestjs/cli: ^10.3.0
- Command Line Interface for NestJS projects
- @nestjs/schematics: ^10.1.0
- Schematics for NestJS CLI
- @nestjs/testing: ^10.4.18
- Testing utilities for NestJS
TypeScript and Compilation¶
- @swc/cli: ^0.3.0
- Swift compiler CLI
- @swc/core: ^1.3.107
- Swift compiler core
- ts-loader: ^9.5.1
- TypeScript loader for webpack
- ts-node: ^10.9.2
- TypeScript execution environment for Node.js
- tsconfig-paths: ^4.2.0
- Loading modules according to tsconfig paths
Testing¶
- jest: ^29.7.0
- Testing framework
- ts-jest: ^29.1.2
- Jest transformer for TypeScript
- supertest: ^6.3.4
- HTTP assertions for API testing
Code Quality¶
- eslint: ^8.56.0
- JavaScript and TypeScript linter
- @typescript-eslint/eslint-plugin: ^6.19.1
- ESLint rules for TypeScript
- @typescript-eslint/parser: ^6.19.1
- TypeScript parser for ESLint
- prettier: ^3.2.4
- Code formatter
- eslint-config-prettier: ^9.1.0
- Prettier integration for ESLint
- eslint-plugin-prettier: ^5.1.3
- Runs Prettier as an ESLint rule
Type Definitions¶
- @types/node: ^20.11.10
- TypeScript definitions for Node.js
- @types/express: ^4.17.21
- TypeScript definitions for Express
- @types/jest: ^29.5.14
- TypeScript definitions for Jest
- @types/passport-jwt: ^4.0.1
- TypeScript definitions for Passport JWT
- @types/socket.io: ^3.0.1
- TypeScript definitions for Socket.IO
- @types/ws: ^8.5.10
- TypeScript definitions for ws
- @types/uuid: ^10.0.0
- TypeScript definitions for UUID