From 98dd0680307f179d7cd67d44e08fbcc48fd87891 Mon Sep 17 00:00:00 2001 From: Dafloresdiaz Date: Mon, 11 Mar 2024 15:09:33 -0600 Subject: [PATCH] feat: Add information about the cross cutting concerns (#12) --- README.md | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/README.md b/README.md index ebd1e46..a2dc391 100644 --- a/README.md +++ b/README.md @@ -12,6 +12,28 @@ This initiative aims to expedite the development of applications in their initia The main purpose of this project is to establish a microservices standard by providing a robust base code that addresses the fundamental needs of any microservices-focused project. It aims to promote good development practices, the adoption of design patterns and architecture specific to microservices. Additionally, there is an intention to encourage the implementation of rigorous processes for code testing and quality assurance, ensuring the reliability and efficiency of the resulting system. +### Cross-Cutting Concerns in the project: +#### What are cross-cutting concerns: +A cross cutting concern is functionality that is apply horizontally across an entire application. This functionality play and essential role in ensuring maintainability and scalability for the system. To know more about check this link: [Cross-Cutting Concerns](https://microservices.io/patterns/microservice-chassis.html) + +This application use some cross-cutting concerns, like: + +1. Security: + - REST APIs must be secured by requiring an Access Token + - Implementation: + - The application includes the use of a Bearer Token for the paths of the application and the use of [JWT](https://jwt.io/) as the creation of the token. + - To create the token you can use the path ```http://localhost:3001/auth/token)``` +2. Logging: + - This enabled the examination of application behavior, such as monitoring, debugging, or tracking activities within the app. + - Implementation: + - The application use a logger middleware to print in console information during the execution of the app. +3. Health check: + - A url that a monitoring service can “ping” to determine the health of the application + - Implementation: + - The application includes a path ```http://localhost:3001/health)``` to verify the health of the service +4. Externalized configuration: + - The application use a configuration to be connected to a Postgresql database using docker. + ## Specific ### Content