├── .env ├── api └── viacep │ └── viacep.go ├── cmd └── webserver │ └── main.go ├── config ├── env │ └── env.go └── logger │ └── logger.go ├── docker-compose.yml ├── docs ├── custom │ ├── custom_css.go │ └── custom_layout.go ├── docs.go ├── swagger.json └── swagger.yaml ├── go.mod ├── go.sum ├── http_client.http ├── internal ├── common │ └── utils │ │ └── decode_jwt.go ├── database │ ├── connection.go │ ├── migrations │ │ ├── 000001_init.down.sql │ │ ├── 000001_init.up.sql │ │ ├── 000002_init.down.sql │ │ ├── 000002_init.up.sql │ │ ├── 000003_init.down.sql │ │ └── 000003_init.up.sql │ ├── queries │ │ ├── categories.sql │ │ ├── products.sql │ │ └── users.sql │ └── sqlc │ │ ├── categories.sql.go │ │ ├── db.go │ │ ├── models.go │ │ ├── products.sql.go │ │ └── users.sql.go ├── dto │ ├── category_dto.go │ ├── product_dto.go │ └── user_dto.go ├── entity │ ├── category_entity.go │ ├── product_entity.go │ └── user_entity.go ├── handler │ ├── auth_handler.go │ ├── category_handler.go │ ├── httperr │ │ └── httperr.go │ ├── interface_handler.go │ ├── middleware │ │ └── logger_middleware.go │ ├── product_handler.go │ ├── response │ │ ├── category_response.go │ │ ├── product_response.go │ │ └── user_response.go │ ├── routes │ │ ├── docs_route.go │ │ └── routes.go │ ├── user_handler.go │ └── validation │ │ └── http_validation.go ├── repository │ ├── categoryrepository │ │ ├── category_interface_repository.go │ │ └── category_repository.go │ ├── productrepository │ │ ├── product_interface_repository.go │ │ └── product_repository.go │ ├── transaction │ │ └── run_transaction.go │ └── userrepository │ │ ├── user_interface_repository.go │ │ └── user_repository.go └── service │ ├── categoryservice │ ├── category_interface_service.go │ └── category_service.go │ ├── productservice │ ├── product_interface_service.go │ └── product_service.go │ └── userservice │ ├── auth_service.go │ ├── user_interface_service.go │ └── user_service.go ├── makefile ├── readme.md └── sqlc.yaml /.env: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wiliamvj/api-users-golang/HEAD/.env -------------------------------------------------------------------------------- /api/viacep/viacep.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wiliamvj/api-users-golang/HEAD/api/viacep/viacep.go -------------------------------------------------------------------------------- /cmd/webserver/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wiliamvj/api-users-golang/HEAD/cmd/webserver/main.go -------------------------------------------------------------------------------- /config/env/env.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wiliamvj/api-users-golang/HEAD/config/env/env.go -------------------------------------------------------------------------------- /config/logger/logger.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wiliamvj/api-users-golang/HEAD/config/logger/logger.go -------------------------------------------------------------------------------- /docker-compose.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wiliamvj/api-users-golang/HEAD/docker-compose.yml -------------------------------------------------------------------------------- /docs/custom/custom_css.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wiliamvj/api-users-golang/HEAD/docs/custom/custom_css.go -------------------------------------------------------------------------------- /docs/custom/custom_layout.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wiliamvj/api-users-golang/HEAD/docs/custom/custom_layout.go -------------------------------------------------------------------------------- /docs/docs.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wiliamvj/api-users-golang/HEAD/docs/docs.go -------------------------------------------------------------------------------- /docs/swagger.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wiliamvj/api-users-golang/HEAD/docs/swagger.json -------------------------------------------------------------------------------- /docs/swagger.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wiliamvj/api-users-golang/HEAD/docs/swagger.yaml -------------------------------------------------------------------------------- /go.mod: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wiliamvj/api-users-golang/HEAD/go.mod -------------------------------------------------------------------------------- /go.sum: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wiliamvj/api-users-golang/HEAD/go.sum -------------------------------------------------------------------------------- /http_client.http: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wiliamvj/api-users-golang/HEAD/http_client.http -------------------------------------------------------------------------------- /internal/common/utils/decode_jwt.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wiliamvj/api-users-golang/HEAD/internal/common/utils/decode_jwt.go -------------------------------------------------------------------------------- /internal/database/connection.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wiliamvj/api-users-golang/HEAD/internal/database/connection.go -------------------------------------------------------------------------------- /internal/database/migrations/000001_init.down.sql: -------------------------------------------------------------------------------- 1 | DROP TABLE IF EXISTS users; 2 | -------------------------------------------------------------------------------- /internal/database/migrations/000001_init.up.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wiliamvj/api-users-golang/HEAD/internal/database/migrations/000001_init.up.sql -------------------------------------------------------------------------------- /internal/database/migrations/000002_init.down.sql: -------------------------------------------------------------------------------- 1 | DROP TABLE IF EXISTS address; -------------------------------------------------------------------------------- /internal/database/migrations/000002_init.up.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wiliamvj/api-users-golang/HEAD/internal/database/migrations/000002_init.up.sql -------------------------------------------------------------------------------- /internal/database/migrations/000003_init.down.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wiliamvj/api-users-golang/HEAD/internal/database/migrations/000003_init.down.sql -------------------------------------------------------------------------------- /internal/database/migrations/000003_init.up.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wiliamvj/api-users-golang/HEAD/internal/database/migrations/000003_init.up.sql -------------------------------------------------------------------------------- /internal/database/queries/categories.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wiliamvj/api-users-golang/HEAD/internal/database/queries/categories.sql -------------------------------------------------------------------------------- /internal/database/queries/products.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wiliamvj/api-users-golang/HEAD/internal/database/queries/products.sql -------------------------------------------------------------------------------- /internal/database/queries/users.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wiliamvj/api-users-golang/HEAD/internal/database/queries/users.sql -------------------------------------------------------------------------------- /internal/database/sqlc/categories.sql.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wiliamvj/api-users-golang/HEAD/internal/database/sqlc/categories.sql.go -------------------------------------------------------------------------------- /internal/database/sqlc/db.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wiliamvj/api-users-golang/HEAD/internal/database/sqlc/db.go -------------------------------------------------------------------------------- /internal/database/sqlc/models.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wiliamvj/api-users-golang/HEAD/internal/database/sqlc/models.go -------------------------------------------------------------------------------- /internal/database/sqlc/products.sql.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wiliamvj/api-users-golang/HEAD/internal/database/sqlc/products.sql.go -------------------------------------------------------------------------------- /internal/database/sqlc/users.sql.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wiliamvj/api-users-golang/HEAD/internal/database/sqlc/users.sql.go -------------------------------------------------------------------------------- /internal/dto/category_dto.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wiliamvj/api-users-golang/HEAD/internal/dto/category_dto.go -------------------------------------------------------------------------------- /internal/dto/product_dto.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wiliamvj/api-users-golang/HEAD/internal/dto/product_dto.go -------------------------------------------------------------------------------- /internal/dto/user_dto.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wiliamvj/api-users-golang/HEAD/internal/dto/user_dto.go -------------------------------------------------------------------------------- /internal/entity/category_entity.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wiliamvj/api-users-golang/HEAD/internal/entity/category_entity.go -------------------------------------------------------------------------------- /internal/entity/product_entity.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wiliamvj/api-users-golang/HEAD/internal/entity/product_entity.go -------------------------------------------------------------------------------- /internal/entity/user_entity.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wiliamvj/api-users-golang/HEAD/internal/entity/user_entity.go -------------------------------------------------------------------------------- /internal/handler/auth_handler.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wiliamvj/api-users-golang/HEAD/internal/handler/auth_handler.go -------------------------------------------------------------------------------- /internal/handler/category_handler.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wiliamvj/api-users-golang/HEAD/internal/handler/category_handler.go -------------------------------------------------------------------------------- /internal/handler/httperr/httperr.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wiliamvj/api-users-golang/HEAD/internal/handler/httperr/httperr.go -------------------------------------------------------------------------------- /internal/handler/interface_handler.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wiliamvj/api-users-golang/HEAD/internal/handler/interface_handler.go -------------------------------------------------------------------------------- /internal/handler/middleware/logger_middleware.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wiliamvj/api-users-golang/HEAD/internal/handler/middleware/logger_middleware.go -------------------------------------------------------------------------------- /internal/handler/product_handler.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wiliamvj/api-users-golang/HEAD/internal/handler/product_handler.go -------------------------------------------------------------------------------- /internal/handler/response/category_response.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wiliamvj/api-users-golang/HEAD/internal/handler/response/category_response.go -------------------------------------------------------------------------------- /internal/handler/response/product_response.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wiliamvj/api-users-golang/HEAD/internal/handler/response/product_response.go -------------------------------------------------------------------------------- /internal/handler/response/user_response.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wiliamvj/api-users-golang/HEAD/internal/handler/response/user_response.go -------------------------------------------------------------------------------- /internal/handler/routes/docs_route.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wiliamvj/api-users-golang/HEAD/internal/handler/routes/docs_route.go -------------------------------------------------------------------------------- /internal/handler/routes/routes.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wiliamvj/api-users-golang/HEAD/internal/handler/routes/routes.go -------------------------------------------------------------------------------- /internal/handler/user_handler.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wiliamvj/api-users-golang/HEAD/internal/handler/user_handler.go -------------------------------------------------------------------------------- /internal/handler/validation/http_validation.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wiliamvj/api-users-golang/HEAD/internal/handler/validation/http_validation.go -------------------------------------------------------------------------------- /internal/repository/categoryrepository/category_interface_repository.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wiliamvj/api-users-golang/HEAD/internal/repository/categoryrepository/category_interface_repository.go -------------------------------------------------------------------------------- /internal/repository/categoryrepository/category_repository.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wiliamvj/api-users-golang/HEAD/internal/repository/categoryrepository/category_repository.go -------------------------------------------------------------------------------- /internal/repository/productrepository/product_interface_repository.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wiliamvj/api-users-golang/HEAD/internal/repository/productrepository/product_interface_repository.go -------------------------------------------------------------------------------- /internal/repository/productrepository/product_repository.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wiliamvj/api-users-golang/HEAD/internal/repository/productrepository/product_repository.go -------------------------------------------------------------------------------- /internal/repository/transaction/run_transaction.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wiliamvj/api-users-golang/HEAD/internal/repository/transaction/run_transaction.go -------------------------------------------------------------------------------- /internal/repository/userrepository/user_interface_repository.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wiliamvj/api-users-golang/HEAD/internal/repository/userrepository/user_interface_repository.go -------------------------------------------------------------------------------- /internal/repository/userrepository/user_repository.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wiliamvj/api-users-golang/HEAD/internal/repository/userrepository/user_repository.go -------------------------------------------------------------------------------- /internal/service/categoryservice/category_interface_service.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wiliamvj/api-users-golang/HEAD/internal/service/categoryservice/category_interface_service.go -------------------------------------------------------------------------------- /internal/service/categoryservice/category_service.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wiliamvj/api-users-golang/HEAD/internal/service/categoryservice/category_service.go -------------------------------------------------------------------------------- /internal/service/productservice/product_interface_service.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wiliamvj/api-users-golang/HEAD/internal/service/productservice/product_interface_service.go -------------------------------------------------------------------------------- /internal/service/productservice/product_service.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wiliamvj/api-users-golang/HEAD/internal/service/productservice/product_service.go -------------------------------------------------------------------------------- /internal/service/userservice/auth_service.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wiliamvj/api-users-golang/HEAD/internal/service/userservice/auth_service.go -------------------------------------------------------------------------------- /internal/service/userservice/user_interface_service.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wiliamvj/api-users-golang/HEAD/internal/service/userservice/user_interface_service.go -------------------------------------------------------------------------------- /internal/service/userservice/user_service.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wiliamvj/api-users-golang/HEAD/internal/service/userservice/user_service.go -------------------------------------------------------------------------------- /makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wiliamvj/api-users-golang/HEAD/makefile -------------------------------------------------------------------------------- /readme.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wiliamvj/api-users-golang/HEAD/readme.md -------------------------------------------------------------------------------- /sqlc.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wiliamvj/api-users-golang/HEAD/sqlc.yaml --------------------------------------------------------------------------------