Nestjs Graphql Microservices

screenshot of Nestjs Graphql Microservices

GraphQL API with gRPC back-end microservices built using the NestJS framework. Used for learning/trial & boilerplate purposes only.

Overview:

This project is a monorepo containing a GraphQL API with gRPC back-end microservices built using the NestJS framework. It is mainly used for learning/trial and boilerplate purposes. The project implements a Graph Model for the GraphQL API, where users can write posts and comments. The GraphQL API acts as a gateway/proxy for different microservices and communicates with them using gRPC protocol. The architecture follows Microservice Design Patterns and uses NestJS + GraphQL as the API Layer, NestJS + gRPC for the Microservice Layer, and PostgreSQL as the Persistence Layer. Deployment is done using Docker Compose.

Features:

  • Monorepo containing GraphQL API and gRPC microservices
  • Implements a Graph Model for users, posts, and comments
  • GraphQL API acts as a gateway/proxy for microservices
  • Communication between API and microservices using gRPC protocol
  • Microservices handle database operations and internal/external calls
  • Follows Microservice Design Patterns
  • Uses NestJS + GraphQL for the API Layer
  • Uses NestJS + gRPC for the Microservice Layer
  • Uses PostgreSQL as the database with Sequelize as the ORM
  • Deployment using Docker Compose

Summary:

The NestJS GraphQL API + gRPC microservices project is a monorepo that implements a Graph Model for a GraphQL API. The API acts as a gateway/proxy for different gRPC microservices, which handle database operations and other internal/external calls. The project follows Microservice Design Patterns, with NestJS + GraphQL serving as the API Layer and NestJS + gRPC as the Microservice Layer. PostgreSQL is used as the database with Sequelize as the ORM. Deployment is done using Docker Compose. This project is mainly used for learning and boilerplate purposes.