Press "Enter" to skip to content

ISBN 9781939902627
303 pages
Published September 2018

Nest.js: A Progressive Node.js Framework
by: Greg Magolan, Patrick Housley, Adrien de Peretti, Jay Bell, David Guijarro

JavaScript frameworks go in and out of style very quickly as web technologies change and grow. Nest.js is a good starting point for many developers that are looking to use a modern web framework because it uses a language that is very similar to that of the most used language on the web to this day, JavaScript. Nest.js also uses TypeScript, which is a language that provides the simplicity and power of JavaScript with the type safety of other languages you may be used to. The type safety in Nest.js is only available at compile time, because the Nest.js server is compiled to a Node.js Express server that runs JavaScript. This is still a major advantage, however, since it allows you to better design programs error free prior to runtime.

With Nest.js making use of Node.js Express, you have access to each and every one of the Node.js packages when developing Nest applications. Many even have type definitions for their packages that allow IDE’s to read the package and make suggestions/auto fill in code that may not be possible when crossing JavaScript code with TypeScript code. One of the largest benefits of Node.js is the huge repository of modules that are available to pull from instead of having to write your own. Nest.js includes some of these modules already as part of the Nest platform, like @nestjs/mongoose, which uses the NPM library mongoose.

Angular was a heavy inspiration for the development of Nest.js because both use a Module/Component system that allows for reusability. If you are not familiar with Angular, it is a TypeScript-based front-end framework that can be used cross-platform to develop responsive web apps and native apps, and it functions a lot like Nest does. The two also pair very well together with Nest providing the ability to run a Universal server to serve pre-rendered Angular web pages to speed up website delivering times using Server-Side Rendering (SSR) mentioned above.

Table of Contents:

CHAPTER 1: Introduction
CHAPTER 2: Overview
CHAPTER 3: Nest.js authentication
CHAPTER 4: Dependency Injection system of Nest.js
CHAPTER 6: Sequelize
CHAPTER 7: Mongoose
CHAPTER 8: Web sockets
CHAPTER 9: Microservices
CHAPTER 10: Routing and request handling in Nest.js
CHAPTER 11: OpenAPI (Swagger) Specification
CHAPTER 12: Command Query Responsibility Separation (CQRS)
CHAPTER 13: Architecture
CHAPTER 14: Testing
CHAPTER 15: Server-side Rendering with Angular Universal