https://github.com/bellatalex/project-airporting

Explanation

My approach to the project involved implementing numerous verifications to ensure the highest quality of code. I chose TypeScript over JavaScript due to security concerns. I logged every error in a file to not give back unwanted information with winston. I used helmet to hide unwanted information in my reponse header.

To ensure optimal code quality, I configured ESLint with the following strict rules:

Untitled

Additionally, I installed Prettier to maintain well-formatted code with the following config:

Untitled

I also created unit tests with Jest to secure check entry points and prevent any regressions.

To automate checks during development, I used Husky and lint-staged to trigger validations on every git commitwith ESLint, Jest, and Prettier. Furthermore, I integrated GitHub Actions to perform the following checks on all pull requests: Audit Dependencies, ESLint check, and Prettier check. (As github.com is not on Bridge Api’s grant list, I couldn’t execute Jest test from GitHub Actions.)

I set up automatic deployment for every commit to the main branch using Railway and GitHub.

Unfortunately, due to IP restrictions imposed by the Bridge API, the API calls were unsuccessful. So I quit the idea of hosting the project.

I wanted to add Checkmarx and SonarQube but their hosted services are behind a pay wall now.

Init

Get the project files with the authorized account, get in the folder and create a .env file:

git clone <https://github.com/bellatalex/Test-technique-Node.git>
cd Test-technique-Node
vi .env

Fill the .env with the following lines.

.env:


Install the project: