gitextract_na8wnxnj/ ├── .circleci/ │ └── config.yml ├── .gitignore ├── Makefile ├── README.md ├── app/ │ ├── auth/ │ │ ├── middleware.go │ │ └── provider.go │ ├── casbin/ │ │ └── provider.go │ ├── common/ │ │ ├── bcrypt.go │ │ ├── constants.go │ │ ├── graphql.go │ │ └── jaeger.go │ ├── config/ │ │ ├── injector.go │ │ ├── provider.go │ │ └── wire_gen.go │ ├── context/ │ │ └── context.go │ ├── dataloader/ │ │ ├── dataloader.go │ │ └── productitemloader_gen.go │ ├── db/ │ │ ├── db.go │ │ ├── domain/ │ │ │ ├── product.go │ │ │ ├── product_item.go │ │ │ └── user.go │ │ ├── injector.go │ │ ├── provider.go │ │ ├── repo/ │ │ │ ├── provider.go │ │ │ ├── users.go │ │ │ └── users_test.go │ │ └── wire_gen.go │ ├── entrypoint/ │ │ ├── entrypoint.go │ │ ├── entrypoint_test.go │ │ └── provider.go │ ├── graphql/ │ │ ├── graphql.go │ │ └── provider.go │ ├── graphql_resolver/ │ │ ├── injector.go │ │ ├── mock.go │ │ ├── product.go │ │ ├── product_test.go │ │ ├── provider.go │ │ ├── resolver.go │ │ ├── resolver_gen.go │ │ ├── user.go │ │ ├── user_test.go │ │ └── wire_gen.go │ ├── grpc/ │ │ ├── connection.go │ │ ├── manager.go │ │ ├── pool.go │ │ └── provider.go │ ├── http/ │ │ ├── http.go │ │ ├── injector.go │ │ ├── logger.go │ │ ├── provider.go │ │ └── wire_gen.go │ ├── http_routers/ │ │ └── products-router/ │ │ ├── injector.go │ │ ├── manager.go │ │ ├── provider.go │ │ ├── router.go │ │ ├── router_test.go │ │ └── wire_gen.go │ ├── logger/ │ │ ├── injector.go │ │ ├── logger.go │ │ ├── middleware.go │ │ ├── mock.go │ │ ├── provider.go │ │ ├── wire_gen.go │ │ └── zap.go │ ├── provider/ │ │ └── provider.go │ └── tracing/ │ ├── jaeger.go │ └── provider.go ├── cmd/ │ ├── daemon/ │ │ └── daemon.go │ ├── health-check-service/ │ │ └── health_check_service.go │ ├── jwt/ │ │ ├── jwt.go │ │ └── token.go │ ├── migrate/ │ │ └── migrate.go │ ├── product-service/ │ │ ├── nats_service.go │ │ └── product_service.go │ └── root.go ├── dbconfig.yml ├── docker/ │ └── app/ │ ├── Dockerfile │ └── files/ │ └── docker/ │ └── bin/ │ └── entrypoint.sh ├── docker-compose.yml ├── generated/ │ ├── graphql/ │ │ ├── generated.go │ │ └── models_gen.go │ └── resources/ │ └── proto/ │ ├── health_checks/ │ │ ├── health_checks.pb.go │ │ └── health_checks_grpc.pb.go │ └── products/ │ ├── products.pb.go │ └── products_grpc.pb.go ├── go.mod ├── go.sum ├── gqlgen.yml ├── main.go ├── prototool.yaml ├── resources/ │ ├── casbin/ │ │ ├── model.conf │ │ └── policy.csv │ ├── configs/ │ │ ├── development.yaml │ │ └── docker_development.yaml │ ├── graphql/ │ │ ├── products.graphql │ │ ├── root.graphql │ │ └── user.graphql │ ├── keys/ │ │ └── local/ │ │ ├── private_key.pem │ │ └── public_key.pem │ ├── migrations/ │ │ ├── 20181215164636-create_users.sql │ │ └── 20181216210607-records.sql │ ├── proto/ │ │ ├── health_checks/ │ │ │ └── health_checks.proto │ │ └── products/ │ │ └── products.proto │ └── templates/ │ └── helpers/ │ └── errors.html └── scripts/ ├── docker-compose-start.sh └── remove_docker_containers.sh