From d4a224614e04a57ff8e5592074a37bc8b4e6975f Mon Sep 17 00:00:00 2001 From: Mathis Date: Mon, 2 Sep 2024 14:58:28 +0200 Subject: [PATCH] Add security and performance enhancements, remove unused code Deleted unused spec files for app controller and service to clean up the codebase. Added helmet middleware for security and integrated ThrottlerModule for rate limiting and ConfigModule for configuration management. Updated app.service to modify response structure. --- apps/backend/src/app/app.controller.spec.ts | 22 --------------- apps/backend/src/app/app.module.ts | 31 ++++++++++++++++----- apps/backend/src/app/app.service.spec.ts | 21 -------------- apps/backend/src/app/app.service.ts | 8 ++---- apps/backend/src/main.ts | 2 ++ 5 files changed, 28 insertions(+), 56 deletions(-) delete mode 100644 apps/backend/src/app/app.controller.spec.ts delete mode 100644 apps/backend/src/app/app.service.spec.ts diff --git a/apps/backend/src/app/app.controller.spec.ts b/apps/backend/src/app/app.controller.spec.ts deleted file mode 100644 index f020712..0000000 --- a/apps/backend/src/app/app.controller.spec.ts +++ /dev/null @@ -1,22 +0,0 @@ -import { Test, TestingModule } from "@nestjs/testing"; - -import { AppController } from "./app.controller"; -import { AppService } from "./app.service"; - -describe("AppController", () => { - let app: TestingModule; - - beforeAll(async () => { - app = await Test.createTestingModule({ - controllers: [AppController], - providers: [AppService], - }).compile(); - }); - - describe("getData", () => { - it('should return "Hello API"', () => { - const appController = app.get(AppController); - expect(appController.getData()).toEqual({ message: "Hello API" }); - }); - }); -}); diff --git a/apps/backend/src/app/app.module.ts b/apps/backend/src/app/app.module.ts index 4afa69d..903c82e 100644 --- a/apps/backend/src/app/app.module.ts +++ b/apps/backend/src/app/app.module.ts @@ -1,12 +1,29 @@ -import { Module } from "@nestjs/common"; +import { Module } from '@nestjs/common'; -import { AppController } from "./app.controller"; -import { AppService } from "./app.service"; -import { DbModule } from "./db/db.module"; +import { AppController } from './app.controller'; +import { AppService } from './app.service'; +import { DbModule } from './db/db.module'; +import { ThrottlerModule } from '@nestjs/throttler'; +import { ConfigModule } from '@nestjs/config'; +import { AuthModule } from './auth/auth.module'; +import { CredentialsModule } from './credentials/credentials.module'; @Module({ - imports: [DbModule], - controllers: [AppController], - providers: [AppService], + imports: [ + ThrottlerModule.forRoot([ + { + ttl: 60000, + limit: 10, + }, + ]), + ConfigModule.forRoot({ + isGlobal: true, + }), + DbModule, + AuthModule, + CredentialsModule, + ], + controllers: [AppController], + providers: [AppService], }) export class AppModule {} diff --git a/apps/backend/src/app/app.service.spec.ts b/apps/backend/src/app/app.service.spec.ts deleted file mode 100644 index 3918cbf..0000000 --- a/apps/backend/src/app/app.service.spec.ts +++ /dev/null @@ -1,21 +0,0 @@ -import { Test } from "@nestjs/testing"; - -import { AppService } from "./app.service"; - -describe("AppService", () => { - let service: AppService; - - beforeAll(async () => { - const app = await Test.createTestingModule({ - providers: [AppService], - }).compile(); - - service = app.get(AppService); - }); - - describe("getData", () => { - it('should return "Hello API"', () => { - expect(service.getData()).toEqual({ message: "Hello API" }); - }); - }); -}); diff --git a/apps/backend/src/app/app.service.ts b/apps/backend/src/app/app.service.ts index 6643ef5..a201571 100644 --- a/apps/backend/src/app/app.service.ts +++ b/apps/backend/src/app/app.service.ts @@ -2,11 +2,7 @@ import { Injectable } from "@nestjs/common"; @Injectable() export class AppService { - getData(): { message: string } { - return { message: "Hello API" }; + getData(): { registration: boolean } { + return { registration: false }; } } - -const hello: object = { - name: "ABC", -}; diff --git a/apps/backend/src/main.ts b/apps/backend/src/main.ts index cb835f2..e3bb581 100644 --- a/apps/backend/src/main.ts +++ b/apps/backend/src/main.ts @@ -6,12 +6,14 @@ import { Logger } from "@nestjs/common"; import { NestFactory } from "@nestjs/core"; +import helmet from "helmet"; import { AppModule } from "./app/app.module"; async function bootstrap() { const app = await NestFactory.create(AppModule); const globalPrefix = "api"; app.setGlobalPrefix(globalPrefix); + app.use(helmet()); const port = process.env.PORT || 3000; await app.listen(port); Logger.log(