├── .github └── workflows │ ├── deploy.yml │ └── test.yml ├── .gitignore ├── Makefile ├── README.md ├── api-gateway ├── Dockerfile ├── Makefile ├── cmd │ └── main.go ├── go.mod ├── go.sum └── pkg │ ├── auth │ ├── client.go │ ├── middleware.go │ ├── pb │ │ ├── auth.pb.go │ │ ├── auth.proto │ │ └── auth_grpc.pb.go │ ├── routes.go │ └── routes │ │ ├── admin_login.go │ │ ├── login.go │ │ └── register.go │ ├── config │ ├── config.go │ └── envs │ │ └── dev.env │ ├── order │ ├── client.go │ ├── pb │ │ ├── order.pb.go │ │ ├── order.proto │ │ └── order_grpc.pb.go │ ├── routes.go │ └── routes │ │ └── create_order.go │ └── product │ ├── client.go │ ├── pb │ ├── product.pb.go │ ├── product.proto │ └── product_grpc.pb.go │ ├── routes.go │ └── routes │ ├── create_product.go │ ├── find_all.go │ └── find_one.go ├── auth-svc ├── Dockerfile ├── Makefile ├── cmd │ └── main.go ├── go.mod ├── go.sum └── pkg │ ├── config │ ├── config.go │ └── envs │ │ └── dev.env │ ├── db │ └── db.go │ ├── models │ └── auth.go │ ├── pb │ ├── auth.pb.go │ ├── auth.proto │ └── auth_grpc.pb.go │ ├── services │ ├── admin.go │ └── auth.go │ └── utils │ ├── hash.go │ └── jwt.go ├── diagram.drawio.png ├── docker-compose.yml ├── order-svc ├── Dockerfile ├── Makefile ├── cmd │ └── main.go ├── go.mod ├── go.sum └── pkg │ ├── client │ └── product_client.go │ ├── config │ ├── config.go │ └── envs │ │ └── dev.env │ ├── db │ └── db.go │ ├── models │ └── order.go │ ├── pb │ ├── order.pb.go │ ├── order.proto │ ├── order_grpc.pb.go │ ├── product.pb.go │ ├── product.proto │ └── product_grpc.pb.go │ └── services │ └── order.go └── product-svc ├── Dockerfile ├── Makefile ├── cmd └── main.go ├── go.mod ├── go.sum └── pkg ├── config ├── config.go └── envs │ └── dev.env ├── db └── db.go ├── models ├── product.go └── stock_decrease_log.go ├── pb ├── product.pb.go ├── product.proto └── product_grpc.pb.go └── services └── product.go /.github/workflows/deploy.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/amalmadhu06/go-grpc-microservices/HEAD/.github/workflows/deploy.yml -------------------------------------------------------------------------------- /.github/workflows/test.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/amalmadhu06/go-grpc-microservices/HEAD/.github/workflows/test.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | .idea 2 | .env -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/amalmadhu06/go-grpc-microservices/HEAD/Makefile -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/amalmadhu06/go-grpc-microservices/HEAD/README.md -------------------------------------------------------------------------------- /api-gateway/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/amalmadhu06/go-grpc-microservices/HEAD/api-gateway/Dockerfile -------------------------------------------------------------------------------- /api-gateway/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/amalmadhu06/go-grpc-microservices/HEAD/api-gateway/Makefile -------------------------------------------------------------------------------- /api-gateway/cmd/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/amalmadhu06/go-grpc-microservices/HEAD/api-gateway/cmd/main.go -------------------------------------------------------------------------------- /api-gateway/go.mod: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/amalmadhu06/go-grpc-microservices/HEAD/api-gateway/go.mod -------------------------------------------------------------------------------- /api-gateway/go.sum: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/amalmadhu06/go-grpc-microservices/HEAD/api-gateway/go.sum -------------------------------------------------------------------------------- /api-gateway/pkg/auth/client.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/amalmadhu06/go-grpc-microservices/HEAD/api-gateway/pkg/auth/client.go -------------------------------------------------------------------------------- /api-gateway/pkg/auth/middleware.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/amalmadhu06/go-grpc-microservices/HEAD/api-gateway/pkg/auth/middleware.go -------------------------------------------------------------------------------- /api-gateway/pkg/auth/pb/auth.pb.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/amalmadhu06/go-grpc-microservices/HEAD/api-gateway/pkg/auth/pb/auth.pb.go -------------------------------------------------------------------------------- /api-gateway/pkg/auth/pb/auth.proto: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/amalmadhu06/go-grpc-microservices/HEAD/api-gateway/pkg/auth/pb/auth.proto -------------------------------------------------------------------------------- /api-gateway/pkg/auth/pb/auth_grpc.pb.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/amalmadhu06/go-grpc-microservices/HEAD/api-gateway/pkg/auth/pb/auth_grpc.pb.go -------------------------------------------------------------------------------- /api-gateway/pkg/auth/routes.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/amalmadhu06/go-grpc-microservices/HEAD/api-gateway/pkg/auth/routes.go -------------------------------------------------------------------------------- /api-gateway/pkg/auth/routes/admin_login.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/amalmadhu06/go-grpc-microservices/HEAD/api-gateway/pkg/auth/routes/admin_login.go -------------------------------------------------------------------------------- /api-gateway/pkg/auth/routes/login.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/amalmadhu06/go-grpc-microservices/HEAD/api-gateway/pkg/auth/routes/login.go -------------------------------------------------------------------------------- /api-gateway/pkg/auth/routes/register.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/amalmadhu06/go-grpc-microservices/HEAD/api-gateway/pkg/auth/routes/register.go -------------------------------------------------------------------------------- /api-gateway/pkg/config/config.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/amalmadhu06/go-grpc-microservices/HEAD/api-gateway/pkg/config/config.go -------------------------------------------------------------------------------- /api-gateway/pkg/config/envs/dev.env: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/amalmadhu06/go-grpc-microservices/HEAD/api-gateway/pkg/config/envs/dev.env -------------------------------------------------------------------------------- /api-gateway/pkg/order/client.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/amalmadhu06/go-grpc-microservices/HEAD/api-gateway/pkg/order/client.go -------------------------------------------------------------------------------- /api-gateway/pkg/order/pb/order.pb.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/amalmadhu06/go-grpc-microservices/HEAD/api-gateway/pkg/order/pb/order.pb.go -------------------------------------------------------------------------------- /api-gateway/pkg/order/pb/order.proto: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/amalmadhu06/go-grpc-microservices/HEAD/api-gateway/pkg/order/pb/order.proto -------------------------------------------------------------------------------- /api-gateway/pkg/order/pb/order_grpc.pb.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/amalmadhu06/go-grpc-microservices/HEAD/api-gateway/pkg/order/pb/order_grpc.pb.go -------------------------------------------------------------------------------- /api-gateway/pkg/order/routes.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/amalmadhu06/go-grpc-microservices/HEAD/api-gateway/pkg/order/routes.go -------------------------------------------------------------------------------- /api-gateway/pkg/order/routes/create_order.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/amalmadhu06/go-grpc-microservices/HEAD/api-gateway/pkg/order/routes/create_order.go -------------------------------------------------------------------------------- /api-gateway/pkg/product/client.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/amalmadhu06/go-grpc-microservices/HEAD/api-gateway/pkg/product/client.go -------------------------------------------------------------------------------- /api-gateway/pkg/product/pb/product.pb.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/amalmadhu06/go-grpc-microservices/HEAD/api-gateway/pkg/product/pb/product.pb.go -------------------------------------------------------------------------------- /api-gateway/pkg/product/pb/product.proto: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/amalmadhu06/go-grpc-microservices/HEAD/api-gateway/pkg/product/pb/product.proto -------------------------------------------------------------------------------- /api-gateway/pkg/product/pb/product_grpc.pb.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/amalmadhu06/go-grpc-microservices/HEAD/api-gateway/pkg/product/pb/product_grpc.pb.go -------------------------------------------------------------------------------- /api-gateway/pkg/product/routes.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/amalmadhu06/go-grpc-microservices/HEAD/api-gateway/pkg/product/routes.go -------------------------------------------------------------------------------- /api-gateway/pkg/product/routes/create_product.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/amalmadhu06/go-grpc-microservices/HEAD/api-gateway/pkg/product/routes/create_product.go -------------------------------------------------------------------------------- /api-gateway/pkg/product/routes/find_all.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/amalmadhu06/go-grpc-microservices/HEAD/api-gateway/pkg/product/routes/find_all.go -------------------------------------------------------------------------------- /api-gateway/pkg/product/routes/find_one.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/amalmadhu06/go-grpc-microservices/HEAD/api-gateway/pkg/product/routes/find_one.go -------------------------------------------------------------------------------- /auth-svc/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/amalmadhu06/go-grpc-microservices/HEAD/auth-svc/Dockerfile -------------------------------------------------------------------------------- /auth-svc/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/amalmadhu06/go-grpc-microservices/HEAD/auth-svc/Makefile -------------------------------------------------------------------------------- /auth-svc/cmd/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/amalmadhu06/go-grpc-microservices/HEAD/auth-svc/cmd/main.go -------------------------------------------------------------------------------- /auth-svc/go.mod: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/amalmadhu06/go-grpc-microservices/HEAD/auth-svc/go.mod -------------------------------------------------------------------------------- /auth-svc/go.sum: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/amalmadhu06/go-grpc-microservices/HEAD/auth-svc/go.sum -------------------------------------------------------------------------------- /auth-svc/pkg/config/config.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/amalmadhu06/go-grpc-microservices/HEAD/auth-svc/pkg/config/config.go -------------------------------------------------------------------------------- /auth-svc/pkg/config/envs/dev.env: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/amalmadhu06/go-grpc-microservices/HEAD/auth-svc/pkg/config/envs/dev.env -------------------------------------------------------------------------------- /auth-svc/pkg/db/db.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/amalmadhu06/go-grpc-microservices/HEAD/auth-svc/pkg/db/db.go -------------------------------------------------------------------------------- /auth-svc/pkg/models/auth.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/amalmadhu06/go-grpc-microservices/HEAD/auth-svc/pkg/models/auth.go -------------------------------------------------------------------------------- /auth-svc/pkg/pb/auth.pb.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/amalmadhu06/go-grpc-microservices/HEAD/auth-svc/pkg/pb/auth.pb.go -------------------------------------------------------------------------------- /auth-svc/pkg/pb/auth.proto: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/amalmadhu06/go-grpc-microservices/HEAD/auth-svc/pkg/pb/auth.proto -------------------------------------------------------------------------------- /auth-svc/pkg/pb/auth_grpc.pb.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/amalmadhu06/go-grpc-microservices/HEAD/auth-svc/pkg/pb/auth_grpc.pb.go -------------------------------------------------------------------------------- /auth-svc/pkg/services/admin.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/amalmadhu06/go-grpc-microservices/HEAD/auth-svc/pkg/services/admin.go -------------------------------------------------------------------------------- /auth-svc/pkg/services/auth.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/amalmadhu06/go-grpc-microservices/HEAD/auth-svc/pkg/services/auth.go -------------------------------------------------------------------------------- /auth-svc/pkg/utils/hash.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/amalmadhu06/go-grpc-microservices/HEAD/auth-svc/pkg/utils/hash.go -------------------------------------------------------------------------------- /auth-svc/pkg/utils/jwt.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/amalmadhu06/go-grpc-microservices/HEAD/auth-svc/pkg/utils/jwt.go -------------------------------------------------------------------------------- /diagram.drawio.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/amalmadhu06/go-grpc-microservices/HEAD/diagram.drawio.png -------------------------------------------------------------------------------- /docker-compose.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/amalmadhu06/go-grpc-microservices/HEAD/docker-compose.yml -------------------------------------------------------------------------------- /order-svc/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/amalmadhu06/go-grpc-microservices/HEAD/order-svc/Dockerfile -------------------------------------------------------------------------------- /order-svc/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/amalmadhu06/go-grpc-microservices/HEAD/order-svc/Makefile -------------------------------------------------------------------------------- /order-svc/cmd/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/amalmadhu06/go-grpc-microservices/HEAD/order-svc/cmd/main.go -------------------------------------------------------------------------------- /order-svc/go.mod: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/amalmadhu06/go-grpc-microservices/HEAD/order-svc/go.mod -------------------------------------------------------------------------------- /order-svc/go.sum: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/amalmadhu06/go-grpc-microservices/HEAD/order-svc/go.sum -------------------------------------------------------------------------------- /order-svc/pkg/client/product_client.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/amalmadhu06/go-grpc-microservices/HEAD/order-svc/pkg/client/product_client.go -------------------------------------------------------------------------------- /order-svc/pkg/config/config.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/amalmadhu06/go-grpc-microservices/HEAD/order-svc/pkg/config/config.go -------------------------------------------------------------------------------- /order-svc/pkg/config/envs/dev.env: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/amalmadhu06/go-grpc-microservices/HEAD/order-svc/pkg/config/envs/dev.env -------------------------------------------------------------------------------- /order-svc/pkg/db/db.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/amalmadhu06/go-grpc-microservices/HEAD/order-svc/pkg/db/db.go -------------------------------------------------------------------------------- /order-svc/pkg/models/order.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/amalmadhu06/go-grpc-microservices/HEAD/order-svc/pkg/models/order.go -------------------------------------------------------------------------------- /order-svc/pkg/pb/order.pb.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/amalmadhu06/go-grpc-microservices/HEAD/order-svc/pkg/pb/order.pb.go -------------------------------------------------------------------------------- /order-svc/pkg/pb/order.proto: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/amalmadhu06/go-grpc-microservices/HEAD/order-svc/pkg/pb/order.proto -------------------------------------------------------------------------------- /order-svc/pkg/pb/order_grpc.pb.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/amalmadhu06/go-grpc-microservices/HEAD/order-svc/pkg/pb/order_grpc.pb.go -------------------------------------------------------------------------------- /order-svc/pkg/pb/product.pb.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/amalmadhu06/go-grpc-microservices/HEAD/order-svc/pkg/pb/product.pb.go -------------------------------------------------------------------------------- /order-svc/pkg/pb/product.proto: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/amalmadhu06/go-grpc-microservices/HEAD/order-svc/pkg/pb/product.proto -------------------------------------------------------------------------------- /order-svc/pkg/pb/product_grpc.pb.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/amalmadhu06/go-grpc-microservices/HEAD/order-svc/pkg/pb/product_grpc.pb.go -------------------------------------------------------------------------------- /order-svc/pkg/services/order.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/amalmadhu06/go-grpc-microservices/HEAD/order-svc/pkg/services/order.go -------------------------------------------------------------------------------- /product-svc/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/amalmadhu06/go-grpc-microservices/HEAD/product-svc/Dockerfile -------------------------------------------------------------------------------- /product-svc/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/amalmadhu06/go-grpc-microservices/HEAD/product-svc/Makefile -------------------------------------------------------------------------------- /product-svc/cmd/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/amalmadhu06/go-grpc-microservices/HEAD/product-svc/cmd/main.go -------------------------------------------------------------------------------- /product-svc/go.mod: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/amalmadhu06/go-grpc-microservices/HEAD/product-svc/go.mod -------------------------------------------------------------------------------- /product-svc/go.sum: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/amalmadhu06/go-grpc-microservices/HEAD/product-svc/go.sum -------------------------------------------------------------------------------- /product-svc/pkg/config/config.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/amalmadhu06/go-grpc-microservices/HEAD/product-svc/pkg/config/config.go -------------------------------------------------------------------------------- /product-svc/pkg/config/envs/dev.env: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/amalmadhu06/go-grpc-microservices/HEAD/product-svc/pkg/config/envs/dev.env -------------------------------------------------------------------------------- /product-svc/pkg/db/db.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/amalmadhu06/go-grpc-microservices/HEAD/product-svc/pkg/db/db.go -------------------------------------------------------------------------------- /product-svc/pkg/models/product.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/amalmadhu06/go-grpc-microservices/HEAD/product-svc/pkg/models/product.go -------------------------------------------------------------------------------- /product-svc/pkg/models/stock_decrease_log.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/amalmadhu06/go-grpc-microservices/HEAD/product-svc/pkg/models/stock_decrease_log.go -------------------------------------------------------------------------------- /product-svc/pkg/pb/product.pb.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/amalmadhu06/go-grpc-microservices/HEAD/product-svc/pkg/pb/product.pb.go -------------------------------------------------------------------------------- /product-svc/pkg/pb/product.proto: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/amalmadhu06/go-grpc-microservices/HEAD/product-svc/pkg/pb/product.proto -------------------------------------------------------------------------------- /product-svc/pkg/pb/product_grpc.pb.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/amalmadhu06/go-grpc-microservices/HEAD/product-svc/pkg/pb/product_grpc.pb.go -------------------------------------------------------------------------------- /product-svc/pkg/services/product.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/amalmadhu06/go-grpc-microservices/HEAD/product-svc/pkg/services/product.go --------------------------------------------------------------------------------