Nestjs Boilerplate

screenshot of Nestjs Boilerplate
nestjs

NestJS boilerplate. Auth, TypeORM, Mongoose, Postgres, MongoDB, Mailing, I18N, Docker.

Overview:

The NestJS REST API boilerplate is a pre-configured setup for building a REST API using the NestJS framework. It provides a solid foundation for typical projects by including key features such as a database connection, seeding, email configuration, social sign-in, user roles, internationalization, file uploads, Swagger documentation, and more. The boilerplate also includes support for Docker and CI integration with Github Actions. It offers a comfortable development experience and allows for easy testing and benchmarking of the API.

Features:

  • Database: Utilizes TypeORM for easy database management.
  • Seeding: Allows for generating and running database migrations.
  • Config Service: Utilizes the @nestjs/config package for managing configurations.
  • Mailing: Includes integration with Nodemailer for sending emails.
  • Sign in and sign up via email: Provides functionality for user authentication.
  • Social sign in: Allows users to sign in using popular social media platforms like Apple, Facebook, Google, and Twitter.
  • Admin and User roles: Supports different roles for administrators and regular users.
  • I18N: Provides internationalization support using the nestjs-i18n package.
  • File uploads: Allows for uploading files with support for local and Amazon S3 drivers.
  • Swagger: Generates API documentation using Swagger.
  • E2E and unit tests: Includes comprehensive testing capabilities for both end-to-end and unit testing.
  • Docker: Offers Docker support for easy deployment and containerization.
  • CI (Github Actions): Includes integration with Github Actions for continuous integration.

Summary:

The NestJS REST API boilerplate is a comprehensive and pre-configured setup for building a REST API using the NestJS framework. It includes a wide range of features and functionalities, such as database management, email integration, social sign-in, user roles, internationalization support, file uploads, Swagger documentation, and more. The boilerplate also provides ease of use with Docker support and CI integration with Github Actions. With this boilerplate, developers can quickly set up a solid foundation for their REST API projects and focus on building their application's specific business logic.

nestjs
Nest

A progressive Node.js framework for building efficient, scalable, and enterprise-grade server-side applications with TypeScript/JavaScript.

docker
Docker

A website that uses Docker for containerization to streamline development, testing, and deployment workflows. This includes features such as containerization of dependencies, automated builds and deployments, and container orchestration to ensure scalability and availability.

eslint
Eslint

ESLint is a linter for JavaScript that analyzes code to detect and report on potential problems and errors, as well as enforce consistent code style and best practices, helping developers to write cleaner, more maintainable code.

typescript
Typescript

TypeScript is a superset of JavaScript, providing optional static typing, classes, interfaces, and other features that help developers write more maintainable and scalable code. TypeScript's static typing system can catch errors at compile-time, making it easier to build and maintain large applications.