A project that showcases one way to build a microservices solution.
The porject is not meant to be production-ready or production-quality as there are a lot of left out todos, but the project aims to illustrate in a practical way rather than theoratical way, a set of common patterns found in simple, practical, real-world microsrevices solutions.
- Writing multiple small services so that each microservice has its own unique responsibility and each microservice chooses its own tech stack including language, framework, libraries, commnication protocol, etc..
- Isolating the complexities of the authentication and authorization process and integrating it seamlessly with the solution.
- Health & Readiness checking for each microservice.
- Using multiple types of databases.
- Exposing services using REST and gRPC.
- Asynchronous processing for long-running tasks.
- Containerizing all services using Docker.
- Simplifying the development workflow using docker-compose.
- Preparing the Kubernetes deployment and services so they can be deployed to kubernetes.
Authentication & authorization microservice writting in go
Blogs microservice writting in node.js & nest.js
Cognitive operations microservice writting in C#, dotnet core and Hangfire
Frontend microservice written in React, TypeScript and Materia-UI
Sentiment analysis microservice written in Python
Todos microservice written in C# and dotnet core
Text-to-Speech microservice written in go