├── .env ├── .env.test ├── .gitignore ├── Dockerfile ├── README.md ├── client ├── httpbin_client.go └── restclient │ └── httpbin_restclient.go ├── common ├── http_client.go ├── jwt.go ├── logger.go └── model_validation.go ├── configuration ├── config.go ├── database.go ├── fiber.go └── redis.go ├── controller ├── controller_test.go ├── httpbin_controller.go ├── product_controller.go ├── product_controller_test.go ├── transaction_controller.go ├── transaction_detail_controller.go └── user_controller.go ├── db └── migrations │ ├── 20230121031219_create_table_user.down.sql │ ├── 20230121031219_create_table_user.up.sql │ ├── 20230121031229_create_table_user_role.down.sql │ ├── 20230121031229_create_table_user_role.up.sql │ ├── 20230121031236_create_table_product.down.sql │ ├── 20230121031236_create_table_product.up.sql │ ├── 20230121031241_create_table_transaction.down.sql │ ├── 20230121031241_create_table_transaction.up.sql │ ├── 20230121031245_create_table_transaction_detail.down.sql │ └── 20230121031245_create_table_transaction_detail.up.sql ├── docker-compose.yml ├── docs ├── docs.go ├── swagger.json └── swagger.yaml ├── entity ├── product.go ├── transaction.go ├── transaction_detail.go ├── user.go └── user_role.go ├── exception ├── error.go ├── error_handler.go ├── not_found_error.go ├── unauthorized_error.go └── validation_error.go ├── go.mod ├── go.sum ├── main.go ├── middleware └── jwt.go ├── model ├── general_response.go ├── httpbin.go ├── product_model.go ├── transaction_model.go └── user_model.go ├── repository ├── impl │ ├── product_repository_impl.go │ ├── transaction_detail_repository_impl.go │ ├── transaction_repository_impl.go │ └── user_repository_impl.go ├── product_repository.go ├── transaction_detail_repository.go ├── transaction_repository.go └── user_repository.go └── service ├── httpbin_service.go ├── impl ├── httpbin_service_impl.go ├── product_service_impl.go ├── transaction_detail_service_impl.go ├── transaction_service_impl.go └── user_service_impl.go ├── product_service.go ├── transaction_detail_service.go ├── transaction_service.go └── user_service.go /.env: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RizkiMufrizal/gofiber-clean-architecture/HEAD/.env -------------------------------------------------------------------------------- /.env.test: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RizkiMufrizal/gofiber-clean-architecture/HEAD/.env.test -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | .idea 2 | *.iml 3 | logs/ -------------------------------------------------------------------------------- /Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RizkiMufrizal/gofiber-clean-architecture/HEAD/Dockerfile -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RizkiMufrizal/gofiber-clean-architecture/HEAD/README.md -------------------------------------------------------------------------------- /client/httpbin_client.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RizkiMufrizal/gofiber-clean-architecture/HEAD/client/httpbin_client.go -------------------------------------------------------------------------------- /client/restclient/httpbin_restclient.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RizkiMufrizal/gofiber-clean-architecture/HEAD/client/restclient/httpbin_restclient.go -------------------------------------------------------------------------------- /common/http_client.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RizkiMufrizal/gofiber-clean-architecture/HEAD/common/http_client.go -------------------------------------------------------------------------------- /common/jwt.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RizkiMufrizal/gofiber-clean-architecture/HEAD/common/jwt.go -------------------------------------------------------------------------------- /common/logger.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RizkiMufrizal/gofiber-clean-architecture/HEAD/common/logger.go -------------------------------------------------------------------------------- /common/model_validation.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RizkiMufrizal/gofiber-clean-architecture/HEAD/common/model_validation.go -------------------------------------------------------------------------------- /configuration/config.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RizkiMufrizal/gofiber-clean-architecture/HEAD/configuration/config.go -------------------------------------------------------------------------------- /configuration/database.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RizkiMufrizal/gofiber-clean-architecture/HEAD/configuration/database.go -------------------------------------------------------------------------------- /configuration/fiber.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RizkiMufrizal/gofiber-clean-architecture/HEAD/configuration/fiber.go -------------------------------------------------------------------------------- /configuration/redis.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RizkiMufrizal/gofiber-clean-architecture/HEAD/configuration/redis.go -------------------------------------------------------------------------------- /controller/controller_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RizkiMufrizal/gofiber-clean-architecture/HEAD/controller/controller_test.go -------------------------------------------------------------------------------- /controller/httpbin_controller.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RizkiMufrizal/gofiber-clean-architecture/HEAD/controller/httpbin_controller.go -------------------------------------------------------------------------------- /controller/product_controller.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RizkiMufrizal/gofiber-clean-architecture/HEAD/controller/product_controller.go -------------------------------------------------------------------------------- /controller/product_controller_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RizkiMufrizal/gofiber-clean-architecture/HEAD/controller/product_controller_test.go -------------------------------------------------------------------------------- /controller/transaction_controller.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RizkiMufrizal/gofiber-clean-architecture/HEAD/controller/transaction_controller.go -------------------------------------------------------------------------------- /controller/transaction_detail_controller.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RizkiMufrizal/gofiber-clean-architecture/HEAD/controller/transaction_detail_controller.go -------------------------------------------------------------------------------- /controller/user_controller.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RizkiMufrizal/gofiber-clean-architecture/HEAD/controller/user_controller.go -------------------------------------------------------------------------------- /db/migrations/20230121031219_create_table_user.down.sql: -------------------------------------------------------------------------------- 1 | DROP TABLE IF EXISTS tb_user; -------------------------------------------------------------------------------- /db/migrations/20230121031219_create_table_user.up.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RizkiMufrizal/gofiber-clean-architecture/HEAD/db/migrations/20230121031219_create_table_user.up.sql -------------------------------------------------------------------------------- /db/migrations/20230121031229_create_table_user_role.down.sql: -------------------------------------------------------------------------------- 1 | DROP TABLE IF EXISTS tb_user_role; -------------------------------------------------------------------------------- /db/migrations/20230121031229_create_table_user_role.up.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RizkiMufrizal/gofiber-clean-architecture/HEAD/db/migrations/20230121031229_create_table_user_role.up.sql -------------------------------------------------------------------------------- /db/migrations/20230121031236_create_table_product.down.sql: -------------------------------------------------------------------------------- 1 | DROP TABLE IF EXISTS tb_product; -------------------------------------------------------------------------------- /db/migrations/20230121031236_create_table_product.up.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RizkiMufrizal/gofiber-clean-architecture/HEAD/db/migrations/20230121031236_create_table_product.up.sql -------------------------------------------------------------------------------- /db/migrations/20230121031241_create_table_transaction.down.sql: -------------------------------------------------------------------------------- 1 | DROP TABLE IF EXISTS tb_transaction; -------------------------------------------------------------------------------- /db/migrations/20230121031241_create_table_transaction.up.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RizkiMufrizal/gofiber-clean-architecture/HEAD/db/migrations/20230121031241_create_table_transaction.up.sql -------------------------------------------------------------------------------- /db/migrations/20230121031245_create_table_transaction_detail.down.sql: -------------------------------------------------------------------------------- 1 | DROP TABLE IF EXISTS tb_transaction_detail; -------------------------------------------------------------------------------- /db/migrations/20230121031245_create_table_transaction_detail.up.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RizkiMufrizal/gofiber-clean-architecture/HEAD/db/migrations/20230121031245_create_table_transaction_detail.up.sql -------------------------------------------------------------------------------- /docker-compose.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RizkiMufrizal/gofiber-clean-architecture/HEAD/docker-compose.yml -------------------------------------------------------------------------------- /docs/docs.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RizkiMufrizal/gofiber-clean-architecture/HEAD/docs/docs.go -------------------------------------------------------------------------------- /docs/swagger.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RizkiMufrizal/gofiber-clean-architecture/HEAD/docs/swagger.json -------------------------------------------------------------------------------- /docs/swagger.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RizkiMufrizal/gofiber-clean-architecture/HEAD/docs/swagger.yaml -------------------------------------------------------------------------------- /entity/product.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RizkiMufrizal/gofiber-clean-architecture/HEAD/entity/product.go -------------------------------------------------------------------------------- /entity/transaction.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RizkiMufrizal/gofiber-clean-architecture/HEAD/entity/transaction.go -------------------------------------------------------------------------------- /entity/transaction_detail.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RizkiMufrizal/gofiber-clean-architecture/HEAD/entity/transaction_detail.go -------------------------------------------------------------------------------- /entity/user.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RizkiMufrizal/gofiber-clean-architecture/HEAD/entity/user.go -------------------------------------------------------------------------------- /entity/user_role.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RizkiMufrizal/gofiber-clean-architecture/HEAD/entity/user_role.go -------------------------------------------------------------------------------- /exception/error.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RizkiMufrizal/gofiber-clean-architecture/HEAD/exception/error.go -------------------------------------------------------------------------------- /exception/error_handler.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RizkiMufrizal/gofiber-clean-architecture/HEAD/exception/error_handler.go -------------------------------------------------------------------------------- /exception/not_found_error.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RizkiMufrizal/gofiber-clean-architecture/HEAD/exception/not_found_error.go -------------------------------------------------------------------------------- /exception/unauthorized_error.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RizkiMufrizal/gofiber-clean-architecture/HEAD/exception/unauthorized_error.go -------------------------------------------------------------------------------- /exception/validation_error.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RizkiMufrizal/gofiber-clean-architecture/HEAD/exception/validation_error.go -------------------------------------------------------------------------------- /go.mod: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RizkiMufrizal/gofiber-clean-architecture/HEAD/go.mod -------------------------------------------------------------------------------- /go.sum: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RizkiMufrizal/gofiber-clean-architecture/HEAD/go.sum -------------------------------------------------------------------------------- /main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RizkiMufrizal/gofiber-clean-architecture/HEAD/main.go -------------------------------------------------------------------------------- /middleware/jwt.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RizkiMufrizal/gofiber-clean-architecture/HEAD/middleware/jwt.go -------------------------------------------------------------------------------- /model/general_response.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RizkiMufrizal/gofiber-clean-architecture/HEAD/model/general_response.go -------------------------------------------------------------------------------- /model/httpbin.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RizkiMufrizal/gofiber-clean-architecture/HEAD/model/httpbin.go -------------------------------------------------------------------------------- /model/product_model.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RizkiMufrizal/gofiber-clean-architecture/HEAD/model/product_model.go -------------------------------------------------------------------------------- /model/transaction_model.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RizkiMufrizal/gofiber-clean-architecture/HEAD/model/transaction_model.go -------------------------------------------------------------------------------- /model/user_model.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RizkiMufrizal/gofiber-clean-architecture/HEAD/model/user_model.go -------------------------------------------------------------------------------- /repository/impl/product_repository_impl.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RizkiMufrizal/gofiber-clean-architecture/HEAD/repository/impl/product_repository_impl.go -------------------------------------------------------------------------------- /repository/impl/transaction_detail_repository_impl.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RizkiMufrizal/gofiber-clean-architecture/HEAD/repository/impl/transaction_detail_repository_impl.go -------------------------------------------------------------------------------- /repository/impl/transaction_repository_impl.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RizkiMufrizal/gofiber-clean-architecture/HEAD/repository/impl/transaction_repository_impl.go -------------------------------------------------------------------------------- /repository/impl/user_repository_impl.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RizkiMufrizal/gofiber-clean-architecture/HEAD/repository/impl/user_repository_impl.go -------------------------------------------------------------------------------- /repository/product_repository.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RizkiMufrizal/gofiber-clean-architecture/HEAD/repository/product_repository.go -------------------------------------------------------------------------------- /repository/transaction_detail_repository.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RizkiMufrizal/gofiber-clean-architecture/HEAD/repository/transaction_detail_repository.go -------------------------------------------------------------------------------- /repository/transaction_repository.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RizkiMufrizal/gofiber-clean-architecture/HEAD/repository/transaction_repository.go -------------------------------------------------------------------------------- /repository/user_repository.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RizkiMufrizal/gofiber-clean-architecture/HEAD/repository/user_repository.go -------------------------------------------------------------------------------- /service/httpbin_service.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RizkiMufrizal/gofiber-clean-architecture/HEAD/service/httpbin_service.go -------------------------------------------------------------------------------- /service/impl/httpbin_service_impl.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RizkiMufrizal/gofiber-clean-architecture/HEAD/service/impl/httpbin_service_impl.go -------------------------------------------------------------------------------- /service/impl/product_service_impl.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RizkiMufrizal/gofiber-clean-architecture/HEAD/service/impl/product_service_impl.go -------------------------------------------------------------------------------- /service/impl/transaction_detail_service_impl.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RizkiMufrizal/gofiber-clean-architecture/HEAD/service/impl/transaction_detail_service_impl.go -------------------------------------------------------------------------------- /service/impl/transaction_service_impl.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RizkiMufrizal/gofiber-clean-architecture/HEAD/service/impl/transaction_service_impl.go -------------------------------------------------------------------------------- /service/impl/user_service_impl.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RizkiMufrizal/gofiber-clean-architecture/HEAD/service/impl/user_service_impl.go -------------------------------------------------------------------------------- /service/product_service.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RizkiMufrizal/gofiber-clean-architecture/HEAD/service/product_service.go -------------------------------------------------------------------------------- /service/transaction_detail_service.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RizkiMufrizal/gofiber-clean-architecture/HEAD/service/transaction_detail_service.go -------------------------------------------------------------------------------- /service/transaction_service.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RizkiMufrizal/gofiber-clean-architecture/HEAD/service/transaction_service.go -------------------------------------------------------------------------------- /service/user_service.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RizkiMufrizal/gofiber-clean-architecture/HEAD/service/user_service.go --------------------------------------------------------------------------------