Series: API with NestJS

JavaScript NestJS TypeScript

API with NestJS #21. An introduction to CQRS

This entry is part 21 of 187 in the API with NestJS

So far, in our application, we’ve been following a pattern of controllers using services to access and modify the data. While it is a very valid approach, there are other possibilities to look into. NestJS suggests command-query responsibility segregation (CQRS). In this article, we look into this concept and implement it into our application. Instead of keeping […]

JavaScript NestJS TypeScript

API with NestJS #22. Storing JSON with PostgreSQL and TypeORM

This entry is part 22 of 187 in the API with NestJS

So far, in this series, we’ve used PostgreSQL to store data structured in columns. This approach has many benefits, but sometimes, we want some more flexibility, though. Chances are you already know JSON and use it in your web applications. There are databases like MongoDB that store JSON-like documents. With this approach, we can describe […]

JavaScript NestJS TypeScript

API with NestJS #23. Implementing in-memory cache to increase the performance

This entry is part 23 of 187 in the API with NestJS

There are quite a few things we can do when tackling our application’s performance. We sometimes can make our code faster and optimize the database queries. To make our API even more performant, we might want to completely avoid running some of the code. Accessing the data stored in the database is quite often time-consuming. […]

JavaScript NestJS TypeScript

API with NestJS #26. Real-time chat with WebSockets

This entry is part 26 of 187 in the API with NestJS

With WebSockets, we can perform a two-way communication in real-time between the user and the server. Thanks to that, the browser can send messages to the server and listen to information from the other side. The principles of the WebSocket handshake WebSocket is a protocol that operates in a different way than HTTP. Even though […]

JavaScript NestJS TypeScript

API with NestJS #27. Introduction to GraphQL. Queries, mutations, and authentication

This entry is part 27 of 187 in the API with NestJS

GraphQL has gained quite a lot of popularity lately. And no wonder, because it is an interesting approach to querying data. Therefore, it is definitely worth looking into. At its core, GraphQL is a query language with a runtime that can execute them. Although it is an alternative to REST, it can work alongside it. […]

JavaScript NestJS TypeScript

API with NestJS #29. Real-time updates with GraphQL subscriptions

This entry is part 29 of 187 in the API with NestJS

So far, in this series, we’ve used GraphQL both to fetch and modify data. While this covers many real-life cases, modern applications often include situations in which users need immediate feedback when some event occurs. One of the solutions suggested by the GraphQL team is polling. In this technique, the client periodically requests the API for […]

JavaScript NestJS TypeScript

API with NestJS #30. Scalar types in GraphQL

This entry is part 30 of 187 in the API with NestJS

With GraphQL, we model our API as a graph. Within a schema, we have various types of nodes that can relate to each other. While the fields in our query might have sub-fields, at some point, we want to work on concrete data. We refer to the type that describes an individual value as the […]