This repository will be used as the base for the microservice architecture backend for the mock interview project.
database
: Responsible for handling the database operations.repository
: Responsible for handling the database operations for a specific entity.
services
: Responsible for handling the business logic.routes
: Responsible for handling the API routes.middlewares
: Responsible for handling the middlewares.utils
: Responsible for handling the utility functions.config
: Responsible for handling the configuration.
In the services
directory, there is a broker
directory that is responsible for handling the communication between the services. The broker is divided into two parts:
events
: Responsible for handling the events between the services.rpc
: Responsible for handling the Remote Procedure Calls (RPC) between the services.
-
Clone the repository.
-
Install the dependencies.
npm install
- Start the docker containers.
docker-compose up -d
-
Setup the environment variables in the
.env
file. -
Start the application.
npm run dev