Skip to content

Go gRPC example for auth microservice using token-based-but-stateful authentication. Comes along REST endpoints for user management.

Notifications You must be signed in to change notification settings

dinorain/useraja

Repository files navigation

Useraja: Golang auth microservice example with gRPC and REST endpoints

What have been used:

  • GRPC - gRPC
  • Echo - Go web application framework
  • sqlx - Extensions to database/sql.
  • pgx - PostgreS, redis, aws, prometheus, grafana containersQL driver and toolkit for Go
  • JWT - A Go implementation of JSON Web Tokens.
  • viper - A Go configuration with fangs
  • go-redis - Redis client for Golang
  • zap - Logger
  • validator - Go Struct and Field validation
  • migrate - Database migrations. CLI and Golang library.
  • testify - Testing toolkit
  • gomock - Mocking framework
  • CompileDaemon - Compile daemon for Go
  • Docker - Docker

Docker compose files:

docker-compose.local.yml
docker-compose.yml

Docker development usage:

make develop

Local development usage:

make local
make run

Swagger:

http://localhost:5001/swagger/

Test (Admin Login):

curl -X POST                                                   \
    -d '{
        	"email": "admin@gmail.com",
        	"password": "admin"
        }' \
    http://172.104.58.183:5001/swagger/index.html#/Users/post_user_login

About

Go gRPC example for auth microservice using token-based-but-stateful authentication. Comes along REST endpoints for user management.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published