This project is a gateway service built using the NestJS framework. It serves as a central point for handling requests and routing them to appropriate microservices. The gateway also integrates with RabbitMQ for message brokering. π
With its modular architecture, the gateway enables seamless communication between different services, ensuring efficient and scalable application development. πͺ
By leveraging the power of NestJS, developers can easily implement authentication, request validation, and other common functionalities in a declarative manner. β¨
The integration with RabbitMQ allows for reliable and asynchronous communication, enabling the gateway to handle high volumes of requests with ease. π
Whether you're building a monolithic application or a distributed system, this gateway service provides a robust foundation for your project. ποΈ
To pull the Docker image from the GitHub Container Registry:
1 - Login to ghcr.io
echo "YOUR_GITHUB_TOKEN" | docker login ghcr.io -u YOUR_GITHUB_USERNAME --password-stdin
2 - Go to GitHub Packages menu and copy the command to pull the image
To install the dependencies, run:
npm install
To start the application in development mode with hot-reloading:
npm run start:dev
To start the application in production mode:
npm run start:prod
To start the application in debug mode:
npm run start:debug
The application uses the following environment variables, which should be defined in a .env
file at the root of the project:
PORT=3000
MODE=dev
RABBITMQ_URL=amqp://guest:guest@localhost:5672
The following scripts are available in the package.json
:
npm run update
npm run build
npm run format
npm run start
npm run start:dev
Update @pieceowater-dev/lotof.lib.broadcaster
dependency to latest version and start the application in development mode.
npm run start:dev:updt
npm run start:debug
npm run start:prod
npm run lint
npm run test
npm run test:watch
npm run test:cov
npm run test:debug
npm run test:e2e
To run the unit tests:
npm run test
To run the unit tests in watch mode:
npm run test:watch
To run the unit tests with coverage:
npm run test:cov
To run the end-to-end tests:
npm run test:e2e
This project is licensed under the MIT License - see the LICENSE file for details.