Nestjs Rest Template

screenshot of Nestjs Rest Template

Updated NestJS template to quickly start your projects. This project contains MongoDB integration, Typegoose as ORM, JWT as authentication method, Sendgrid for email sending and swagger for API documentation.

Overview:

The NestJS Rest Template is a project that aims to provide a quick and reliable solution for starting a project in NestJS. It offers various features and libraries to help developers get started with their projects efficiently. This template utilizes OpenAPI (Swagger), MongoDB, Typegoose, JWT, SendGrid, and other dependencies to support different functionalities and ensure seamless development.

Features:

  • OpenAPI (Swagger): The template includes OpenAPI (Swagger) module for Nest, allowing developers to document and test their APIs easily.
  • MongoDB: It utilizes MongoDB as the database, providing a scalable and flexible solution for data storage.
  • Typegoose: Typegoose integrates Typegoose models for Nest components and controllers, serving as the equivalent for @nestjs/mongoose.
  • JWT: The template supports authentication using JSON Web Tokens, allowing secure and stateless communication between the client and server.
  • SendGrid: It includes an injectable SendGrid client for NestJS projects, making it convenient to send emails and notifications.
  • Configuration module: The template utilizes the @nestjs/config module for managing and loading process environment variables from the .env file.
  • Validation: Class-validator is used for decorator and non-decorator-based validation, providing a comprehensive and straightforward way to validate input data.
  • Passport integration: Passport utilities module for Nest and passport-jwt authentication strategy are integrated into the template, enabling easy implementation of authentication in the project.

Summary:

The NestJS Rest Template is a convenient starting point for developers looking to build projects with NestJS. It provides essential features like OpenAPI (Swagger) documentation, MongoDB integration, authentication with JWT, and support for SendGrid for sending emails. With its comprehensive set of dependencies and configuration modules, this template helps developers achieve their project goals more efficiently and reduces the burden of setting up the initial project structure.