Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/johnsalazar/microservices-go-authentication

Authentication service. Part of an e-commerce built in Golang.
https://github.com/johnsalazar/microservices-go-authentication

assymetric-key-cryptography clean-code discovery-service docker golang grpc hexagonal-architecture jwt-token kubernetes metrics microservices nats nosql rest-api security solid telemetry

Last synced: about 13 hours ago
JSON representation

Authentication service. Part of an e-commerce built in Golang.

Awesome Lists containing this project

README

        

# **Microservices in Golang - Authentication**

## Languages

- Golang

---

## Implementations

- Self-signed Certificates
- API Documentation
- JWT with Public/Private Key Rotation
- Refresh Token
- Rest
- GRPC
- Events
- Background Services
- Discovery Service
- Telemetry
- Metrics

---

## Testing

- Unit and Integration
- Coverage

---

## Components

- Viper
- UUID
- Validator
- Gin
- Breaker
- Retrier
- Cryptography
- Mongo
- Prometheus
- Otel
- Jaeger
- Consul
- Nats
- Swagger UI with JWT support

---

## Hosting

- NGINX
- Docker
- Kubernetes

---

## Architecture

- Ports and Adapters (Hexagonal Architecture)
- Clean Code
- Retry Pattern
- Circuit Breaker
- Repository
- Api Gateway / Reverse Proxy

###

## Architecture Overview


architecture overview

---

## List of Services

### This service is part 1/8 of the e-commerce application

- **Authentication**
- [Email](https://github.com/JohnSalazar/microservices-go-email)
- [Customer](https://github.com/JohnSalazar/microservices-go-customer)
- [Product](https://github.com/JohnSalazar/microservices-go-product)
- [Cart](https://github.com/JohnSalazar/microservices-go-cart)
- [Order](https://github.com/JohnSalazar/microservices-go-order)
- [Payment](https://github.com/JohnSalazar/microservices-go-payment)
- [Web](https://github.com/JohnSalazar/microservices-go-web)

---

## How to build this project

### Access the Infra repository and follow the instructions

- [Infra](https://github.com/JohnSalazar/microservices-go-infra)

---

## About

Authentication service was developed by [oceano.dev](https://oceano.dev/) Brasil team under the [MIT license](LICENSE).