Skip to content

pieceowater-dev/lotof.hub.gateway

Repository files navigation

lotof.hub.gateway

Description

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. 🏗️

Installation

To install the dependencies, run:

npm install

Running the Application

Development Mode

To start the application in development mode with hot-reloading:

npm run start:dev

Production Mode

To start the application in production mode:

npm run start:prod

Debug Mode

To start the application in debug mode:

npm run start:debug

Environment Variables

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

Scripts

The following scripts are available in the package.json:

Update dependencies.

npm run update

Build the project.

npm run build

Format the code using Prettier.

npm run format

Start the application.

npm run start

Start the application in development mode.

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

Start the application in debug mode.

npm run start:debug

Start the application in production mode.

npm run start:prod

Lint the code using ESLint.

npm run lint

Run unit tests.

npm run test

Run unit tests in watch mode.

npm run test:watch

Run unit tests with coverage.

npm run test:cov

Run unit tests in debug mode.

npm run test:debug

Run end-to-end tests.

npm run test:e2e

Testing

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

License

This project is licensed under the MIT License - see the LICENSE file for details.

Author

PCWT Dev Logo