Template - API
WelcomePrerequisitesNodeJS
  • Welcome!
    • About me
  • Prerequisites
    • Installation and Database Setup
    • Installing Node.js on the Server
  • NodeJS
    • 🆓Getting Started with the Free Template
    • 🎗️Premium Template - REST API
      • Structure
      • Middlewares and Guards
      • Core Modules
        • Prisma with NestJS
        • Swagger with NestJS
      • Dynamic Module
        • Create or Import Module
  • Modules
    • 🎗️Websockets
    • 🎗️Mailer
    • 🎗️Upload
Powered by GitBook
On this page
  • HTTP Module
  • Database Module
  • Performance Module
  • Security Module
  • Services
  1. NodeJS
  2. Premium Template - REST API

Core Modules

Each module encapsulates a specific domain functionality and is structured with services, controllers, and DTOs (Data Transfer Objects).

HTTP Module

  • http.module.ts: The main module for handling HTTP logic.

  • auth.module.ts: Contains authentication logic, with auth.controller.ts managing authentication endpoints.

  • profile.module.ts: Handles profile-related functionality, with profile.controller.ts managing user profiles.

  • user.module.ts: Manages user data and includes user.service.ts for user management.


Database Module

  • database.module.ts: Responsible for managing database connections and queries.

Performance Module

  • performance.module.ts: Optimizes performance through various middlewares like compression and response-time tracking.

  • compression.service.ts, morgan.service.ts, response-time.service.ts: Individual services for performance enhancements.


Security Module

  • security.module.ts: Manages application security with guards like captcha.guard.ts and csrf.guard.ts.

  • cors-config.service.ts, helmet-config.service.ts, rate-limit-config.service.ts: Services responsible for security configurations.

  • captcha-config.service.ts and csrf-config.service.ts: Specific services for handling CAPTCHA and CSRF security measures.


Services

Each module has its own services that encapsulate the business logic. Notable services include:

Exemple :

  • user.service.ts: Provides user-related operations like creation, updates, and retrieval.

  • dynamic-modules-loader.service.ts: Dynamically loads submodules and components at runtime.

  • performance-service-impl.ts: Implements performance-related optimizations.

  • security-service-impl.ts: Implements security measures like CSRF, rate-limiting, and CORS.

PreviousMiddlewares and GuardsNextPrisma with NestJS

Last updated 8 months ago

🎗️