gostat is a microservice-based application for handling HTTP requests authentication and stats. It consists of the following main microservices:
api_service
: This microservice is responsible for handling HTTP requests and interacting with other services. (Api GateWay)auth_service
: This microservice provides authentication functionality.stat_service
: This microservice provides statistics functionality.app_service
: This microservice provides functionality for working with added applicationsmail_service
: This microservice provides functionality for sending emailsclient_service
: Front-end on next.js.
All microservices are written in GoLang and communicate with each other using gRPC
. They also utilize the GORM
ORM library for interacting with a PostgreSQL
database.
- Langs:
GoLang
/TypeScript
- Web Server:
gin
- Database:
PostgreSQL
- ORM:
GORM
- interaction of microservices:
gRPC
Docker
/Docker Compose
To run gostat locally (macos/linux), you need to have the following installed:
- Docker / Docker Compose
- Starting the Services
make start
- Stopping the Services
make stop