Book Image

Nest.js: A Progressive Node.js Framework

By : Greg Magolan, Patrick Housley, Adrien de Peretti, Jay Bell, David Guijarro
Book Image

Nest.js: A Progressive Node.js Framework

By: Greg Magolan, Patrick Housley, Adrien de Peretti, Jay Bell, David Guijarro

Overview of this book

Nest.js is a modern web framework built on a Node.js Express server. With the knowledge of how to use this framework, you can give your applications an organized codebase and a well-defined structure. The book begins by showing how to use Nest.js controllers, providers, modules, bootstrapping, and middleware in your applications. You’ll learn to use the authentication feature of Node.js to manage the restriction access in your application, and how to leverage the Dependency Injection pattern to speed up your application development. As you advance through the book, you'll also see how Nest.js uses TypeORM—an Object Relational Mapping (ORM) that works with several relational databases. You’ll use Nest.js microservices to extract part of your application’s business logic and execute it within a separate Nest.js context. Toward the end of the book, you’ll learn to write tests (both unit tests as well as end-to-end ones) and how to check the percentage of the code your tests cover. By the end of this book, you’ll have all the knowledge you need to build your own Nest.js applications.
Table of Contents (16 chapters)

Chapter 11. OpenAPI (Swagger) Specification

The OpenAPI specification, most notably known by it’s former name Swagger, is a JSON schema that can be used to construct a JSON or YAML definition of a set of restful APIs. OpenAPI itself is language agnostic, meaning the underlying APIs can be constructed in any language with any tool or framework the developer would like. The sole concern of an OpenAPI document is to describe the inputs and outputs, among other things, of API endpoints. In this respect, an OpenAPI document acts as a documentation tool allowing developers to easily describe their public APIs in a format that is widely known, understood, and supported.

The OpenAPI document, however, is not just limited to being documentation. Many tools have been developed that are capable of using an OpenAPI document to auto-generate client projects, server stubs, an API explorer UI for visually inspecting the OpenAPI document, and even server generators. Developers can find such tools...