├── .claude └── settings.local.json ├── .dockerignore ├── .editorconfig ├── .gitattributes ├── .gitignore ├── .mvn └── wrapper │ └── maven-wrapper.properties ├── CLAUDE.md ├── Dockerfile ├── README.md ├── docker-compose.debug.yml ├── docker-compose.yml ├── mvnw ├── mvnw.cmd ├── pom.xml └── src ├── main ├── java │ └── com │ │ └── spring │ │ └── app │ │ ├── BaseSpringApplication.java │ │ ├── common │ │ ├── entities │ │ │ ├── BaseAuditingEntity.java │ │ │ └── BaseEntity.java │ │ ├── pagination │ │ │ ├── PageDto.java │ │ │ ├── PaginationDto.java │ │ │ └── PaginationMetaDataDto.java │ │ ├── response │ │ │ ├── BasePageResponse.java │ │ │ ├── BaseResponse.java │ │ │ └── ResponseBuilder.java │ │ └── validation │ │ │ ├── annotations │ │ │ └── StrongPassword.java │ │ │ ├── groups │ │ │ └── ValidationGroups.java │ │ │ └── validators │ │ │ └── StrongPasswordValidator.java │ │ ├── configs │ │ ├── ApplicationAuditAware.java │ │ ├── ApplicationConfig.java │ │ ├── AsyncConfig.java │ │ ├── CacheConfig.java │ │ ├── CorsConfig.java │ │ ├── HealthCheckConfig.java │ │ ├── MailConfig.java │ │ ├── MetricsConfig.java │ │ ├── RateLimitConfig.java │ │ ├── RedisConfig.java │ │ ├── SecurityConfig.java │ │ ├── SwaggerConfig.java │ │ └── properties │ │ │ ├── ApplicationProperties.java │ │ │ ├── AsyncProperties.java │ │ │ ├── CacheProperties.java │ │ │ ├── FileStorageProperties.java │ │ │ ├── JwtProperties.java │ │ │ ├── MailProperties.java │ │ │ └── RateLimitProperties.java │ │ ├── constants │ │ ├── ApplicationConstants.java │ │ └── WhitelistUrlConstant.java │ │ ├── enums │ │ ├── EPermission.java │ │ ├── ERateLimitEndpoint.java │ │ ├── ERole.java │ │ └── EUserStatus.java │ │ ├── exceptions │ │ ├── BadRequestException.java │ │ ├── ConflictException.java │ │ ├── CustomAuthenticationEntryPoint.java │ │ ├── GlobalExceptionHandler.java │ │ ├── RateLimitExceededException.java │ │ ├── ResourceNotFoundException.java │ │ └── UserNotActiveException.java │ │ ├── filter │ │ ├── JwtAuthenticatorFilter.java │ │ └── RateLimitFilter.java │ │ ├── handlers │ │ ├── CustomAccessDeniedHandler.java │ │ ├── OAuth2AuthenticationFailureHandler.java │ │ └── OAuth2AuthenticationSuccessHandler.java │ │ ├── modules │ │ ├── auth │ │ │ ├── controller │ │ │ │ └── AuthController.java │ │ │ ├── dto │ │ │ │ ├── request │ │ │ │ │ ├── ActiveAccountRequestDto.java │ │ │ │ │ ├── AuthRequestDto.java │ │ │ │ │ ├── LoginRequestDto.java │ │ │ │ │ ├── RefreshTokenDto.java │ │ │ │ │ ├── RegisterRequestDto.java │ │ │ │ │ └── ResendOtpRequestDto.java │ │ │ │ └── response │ │ │ │ │ ├── LoginResponseDto.java │ │ │ │ │ ├── RegisterResponseDto.java │ │ │ │ │ ├── TokenResponseDto.java │ │ │ │ │ └── UserResponseDto.java │ │ │ ├── entities │ │ │ │ ├── RefreshToken.java │ │ │ │ └── User.java │ │ │ ├── mapper │ │ │ │ └── AuthMapper.java │ │ │ ├── repositories │ │ │ │ ├── RefreshTokenRepository.java │ │ │ │ └── UserRepository.java │ │ │ └── services │ │ │ │ ├── AuthServiceInterface.java │ │ │ │ └── impl │ │ │ │ └── AuthServiceImpl.java │ │ ├── upload │ │ │ ├── controller │ │ │ │ └── UploadController.java │ │ │ └── services │ │ │ │ ├── UploadServiceInterface.java │ │ │ │ └── impl │ │ │ │ └── UploadServiceImpl.java │ │ └── user │ │ │ ├── controller │ │ │ └── UserController.java │ │ │ ├── dto │ │ │ └── requests │ │ │ │ └── UpdateUserDto.java │ │ │ ├── mapper │ │ │ └── UpdateUserMapper.java │ │ │ └── services │ │ │ ├── UserServiceInterface.java │ │ │ └── impl │ │ │ └── UserService.java │ │ ├── shared │ │ ├── interfaces │ │ │ ├── JwtServiceInterface.java │ │ │ ├── MailServiceInterface.java │ │ │ └── RedisServiceInterface.java │ │ └── services │ │ │ ├── CustomOAuth2UserService.java │ │ │ ├── JwtService.java │ │ │ ├── MailService.java │ │ │ ├── MonitoringService.java │ │ │ ├── RateLimitManagerService.java │ │ │ └── RedisService.java │ │ ├── templates │ │ └── HtmlTemplateOTPBuilder.java │ │ └── utils │ │ ├── JwtFunctionUtil.java │ │ └── OtpFunctionUtil.java └── resources │ ├── META-INF │ └── additional-spring-configuration-metadata.json │ ├── application.example.yml │ ├── db │ └── migrations │ │ ├── V1__create_refresh_tokens.sql │ │ └── V1__create_user.sql │ ├── logback-spring.xml │ └── templates │ └── otp-email.html └── test └── java └── com └── spring └── app └── BaseSpringApplicationTests.java /.claude/settings.local.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/.claude/settings.local.json -------------------------------------------------------------------------------- /.dockerignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/.dockerignore -------------------------------------------------------------------------------- /.editorconfig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/.editorconfig -------------------------------------------------------------------------------- /.gitattributes: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/.gitattributes -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/.gitignore -------------------------------------------------------------------------------- /.mvn/wrapper/maven-wrapper.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/.mvn/wrapper/maven-wrapper.properties -------------------------------------------------------------------------------- /CLAUDE.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/CLAUDE.md -------------------------------------------------------------------------------- /Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/Dockerfile -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/README.md -------------------------------------------------------------------------------- /docker-compose.debug.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/docker-compose.debug.yml -------------------------------------------------------------------------------- /docker-compose.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/docker-compose.yml -------------------------------------------------------------------------------- /mvnw: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/mvnw -------------------------------------------------------------------------------- /mvnw.cmd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/mvnw.cmd -------------------------------------------------------------------------------- /pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/pom.xml -------------------------------------------------------------------------------- /src/main/java/com/spring/app/BaseSpringApplication.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/java/com/spring/app/BaseSpringApplication.java -------------------------------------------------------------------------------- /src/main/java/com/spring/app/common/entities/BaseAuditingEntity.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/java/com/spring/app/common/entities/BaseAuditingEntity.java -------------------------------------------------------------------------------- /src/main/java/com/spring/app/common/entities/BaseEntity.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/java/com/spring/app/common/entities/BaseEntity.java -------------------------------------------------------------------------------- /src/main/java/com/spring/app/common/pagination/PageDto.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/java/com/spring/app/common/pagination/PageDto.java -------------------------------------------------------------------------------- /src/main/java/com/spring/app/common/pagination/PaginationDto.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/java/com/spring/app/common/pagination/PaginationDto.java -------------------------------------------------------------------------------- /src/main/java/com/spring/app/common/pagination/PaginationMetaDataDto.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/java/com/spring/app/common/pagination/PaginationMetaDataDto.java -------------------------------------------------------------------------------- /src/main/java/com/spring/app/common/response/BasePageResponse.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/java/com/spring/app/common/response/BasePageResponse.java -------------------------------------------------------------------------------- /src/main/java/com/spring/app/common/response/BaseResponse.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/java/com/spring/app/common/response/BaseResponse.java -------------------------------------------------------------------------------- /src/main/java/com/spring/app/common/response/ResponseBuilder.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/java/com/spring/app/common/response/ResponseBuilder.java -------------------------------------------------------------------------------- /src/main/java/com/spring/app/common/validation/annotations/StrongPassword.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/java/com/spring/app/common/validation/annotations/StrongPassword.java -------------------------------------------------------------------------------- /src/main/java/com/spring/app/common/validation/groups/ValidationGroups.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/java/com/spring/app/common/validation/groups/ValidationGroups.java -------------------------------------------------------------------------------- /src/main/java/com/spring/app/common/validation/validators/StrongPasswordValidator.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/java/com/spring/app/common/validation/validators/StrongPasswordValidator.java -------------------------------------------------------------------------------- /src/main/java/com/spring/app/configs/ApplicationAuditAware.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/java/com/spring/app/configs/ApplicationAuditAware.java -------------------------------------------------------------------------------- /src/main/java/com/spring/app/configs/ApplicationConfig.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/java/com/spring/app/configs/ApplicationConfig.java -------------------------------------------------------------------------------- /src/main/java/com/spring/app/configs/AsyncConfig.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/java/com/spring/app/configs/AsyncConfig.java -------------------------------------------------------------------------------- /src/main/java/com/spring/app/configs/CacheConfig.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/java/com/spring/app/configs/CacheConfig.java -------------------------------------------------------------------------------- /src/main/java/com/spring/app/configs/CorsConfig.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/java/com/spring/app/configs/CorsConfig.java -------------------------------------------------------------------------------- /src/main/java/com/spring/app/configs/HealthCheckConfig.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/java/com/spring/app/configs/HealthCheckConfig.java -------------------------------------------------------------------------------- /src/main/java/com/spring/app/configs/MailConfig.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/java/com/spring/app/configs/MailConfig.java -------------------------------------------------------------------------------- /src/main/java/com/spring/app/configs/MetricsConfig.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/java/com/spring/app/configs/MetricsConfig.java -------------------------------------------------------------------------------- /src/main/java/com/spring/app/configs/RateLimitConfig.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/java/com/spring/app/configs/RateLimitConfig.java -------------------------------------------------------------------------------- /src/main/java/com/spring/app/configs/RedisConfig.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/java/com/spring/app/configs/RedisConfig.java -------------------------------------------------------------------------------- /src/main/java/com/spring/app/configs/SecurityConfig.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/java/com/spring/app/configs/SecurityConfig.java -------------------------------------------------------------------------------- /src/main/java/com/spring/app/configs/SwaggerConfig.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/java/com/spring/app/configs/SwaggerConfig.java -------------------------------------------------------------------------------- /src/main/java/com/spring/app/configs/properties/ApplicationProperties.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/java/com/spring/app/configs/properties/ApplicationProperties.java -------------------------------------------------------------------------------- /src/main/java/com/spring/app/configs/properties/AsyncProperties.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/java/com/spring/app/configs/properties/AsyncProperties.java -------------------------------------------------------------------------------- /src/main/java/com/spring/app/configs/properties/CacheProperties.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/java/com/spring/app/configs/properties/CacheProperties.java -------------------------------------------------------------------------------- /src/main/java/com/spring/app/configs/properties/FileStorageProperties.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/java/com/spring/app/configs/properties/FileStorageProperties.java -------------------------------------------------------------------------------- /src/main/java/com/spring/app/configs/properties/JwtProperties.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/java/com/spring/app/configs/properties/JwtProperties.java -------------------------------------------------------------------------------- /src/main/java/com/spring/app/configs/properties/MailProperties.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/java/com/spring/app/configs/properties/MailProperties.java -------------------------------------------------------------------------------- /src/main/java/com/spring/app/configs/properties/RateLimitProperties.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/java/com/spring/app/configs/properties/RateLimitProperties.java -------------------------------------------------------------------------------- /src/main/java/com/spring/app/constants/ApplicationConstants.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/java/com/spring/app/constants/ApplicationConstants.java -------------------------------------------------------------------------------- /src/main/java/com/spring/app/constants/WhitelistUrlConstant.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/java/com/spring/app/constants/WhitelistUrlConstant.java -------------------------------------------------------------------------------- /src/main/java/com/spring/app/enums/EPermission.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/java/com/spring/app/enums/EPermission.java -------------------------------------------------------------------------------- /src/main/java/com/spring/app/enums/ERateLimitEndpoint.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/java/com/spring/app/enums/ERateLimitEndpoint.java -------------------------------------------------------------------------------- /src/main/java/com/spring/app/enums/ERole.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/java/com/spring/app/enums/ERole.java -------------------------------------------------------------------------------- /src/main/java/com/spring/app/enums/EUserStatus.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/java/com/spring/app/enums/EUserStatus.java -------------------------------------------------------------------------------- /src/main/java/com/spring/app/exceptions/BadRequestException.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/java/com/spring/app/exceptions/BadRequestException.java -------------------------------------------------------------------------------- /src/main/java/com/spring/app/exceptions/ConflictException.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/java/com/spring/app/exceptions/ConflictException.java -------------------------------------------------------------------------------- /src/main/java/com/spring/app/exceptions/CustomAuthenticationEntryPoint.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/java/com/spring/app/exceptions/CustomAuthenticationEntryPoint.java -------------------------------------------------------------------------------- /src/main/java/com/spring/app/exceptions/GlobalExceptionHandler.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/java/com/spring/app/exceptions/GlobalExceptionHandler.java -------------------------------------------------------------------------------- /src/main/java/com/spring/app/exceptions/RateLimitExceededException.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/java/com/spring/app/exceptions/RateLimitExceededException.java -------------------------------------------------------------------------------- /src/main/java/com/spring/app/exceptions/ResourceNotFoundException.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/java/com/spring/app/exceptions/ResourceNotFoundException.java -------------------------------------------------------------------------------- /src/main/java/com/spring/app/exceptions/UserNotActiveException.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/java/com/spring/app/exceptions/UserNotActiveException.java -------------------------------------------------------------------------------- /src/main/java/com/spring/app/filter/JwtAuthenticatorFilter.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/java/com/spring/app/filter/JwtAuthenticatorFilter.java -------------------------------------------------------------------------------- /src/main/java/com/spring/app/filter/RateLimitFilter.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/java/com/spring/app/filter/RateLimitFilter.java -------------------------------------------------------------------------------- /src/main/java/com/spring/app/handlers/CustomAccessDeniedHandler.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/java/com/spring/app/handlers/CustomAccessDeniedHandler.java -------------------------------------------------------------------------------- /src/main/java/com/spring/app/handlers/OAuth2AuthenticationFailureHandler.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/java/com/spring/app/handlers/OAuth2AuthenticationFailureHandler.java -------------------------------------------------------------------------------- /src/main/java/com/spring/app/handlers/OAuth2AuthenticationSuccessHandler.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/java/com/spring/app/handlers/OAuth2AuthenticationSuccessHandler.java -------------------------------------------------------------------------------- /src/main/java/com/spring/app/modules/auth/controller/AuthController.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/java/com/spring/app/modules/auth/controller/AuthController.java -------------------------------------------------------------------------------- /src/main/java/com/spring/app/modules/auth/dto/request/ActiveAccountRequestDto.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/java/com/spring/app/modules/auth/dto/request/ActiveAccountRequestDto.java -------------------------------------------------------------------------------- /src/main/java/com/spring/app/modules/auth/dto/request/AuthRequestDto.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/java/com/spring/app/modules/auth/dto/request/AuthRequestDto.java -------------------------------------------------------------------------------- /src/main/java/com/spring/app/modules/auth/dto/request/LoginRequestDto.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/java/com/spring/app/modules/auth/dto/request/LoginRequestDto.java -------------------------------------------------------------------------------- /src/main/java/com/spring/app/modules/auth/dto/request/RefreshTokenDto.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/java/com/spring/app/modules/auth/dto/request/RefreshTokenDto.java -------------------------------------------------------------------------------- /src/main/java/com/spring/app/modules/auth/dto/request/RegisterRequestDto.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/java/com/spring/app/modules/auth/dto/request/RegisterRequestDto.java -------------------------------------------------------------------------------- /src/main/java/com/spring/app/modules/auth/dto/request/ResendOtpRequestDto.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/java/com/spring/app/modules/auth/dto/request/ResendOtpRequestDto.java -------------------------------------------------------------------------------- /src/main/java/com/spring/app/modules/auth/dto/response/LoginResponseDto.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/java/com/spring/app/modules/auth/dto/response/LoginResponseDto.java -------------------------------------------------------------------------------- /src/main/java/com/spring/app/modules/auth/dto/response/RegisterResponseDto.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/java/com/spring/app/modules/auth/dto/response/RegisterResponseDto.java -------------------------------------------------------------------------------- /src/main/java/com/spring/app/modules/auth/dto/response/TokenResponseDto.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/java/com/spring/app/modules/auth/dto/response/TokenResponseDto.java -------------------------------------------------------------------------------- /src/main/java/com/spring/app/modules/auth/dto/response/UserResponseDto.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/java/com/spring/app/modules/auth/dto/response/UserResponseDto.java -------------------------------------------------------------------------------- /src/main/java/com/spring/app/modules/auth/entities/RefreshToken.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/java/com/spring/app/modules/auth/entities/RefreshToken.java -------------------------------------------------------------------------------- /src/main/java/com/spring/app/modules/auth/entities/User.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/java/com/spring/app/modules/auth/entities/User.java -------------------------------------------------------------------------------- /src/main/java/com/spring/app/modules/auth/mapper/AuthMapper.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/java/com/spring/app/modules/auth/mapper/AuthMapper.java -------------------------------------------------------------------------------- /src/main/java/com/spring/app/modules/auth/repositories/RefreshTokenRepository.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/java/com/spring/app/modules/auth/repositories/RefreshTokenRepository.java -------------------------------------------------------------------------------- /src/main/java/com/spring/app/modules/auth/repositories/UserRepository.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/java/com/spring/app/modules/auth/repositories/UserRepository.java -------------------------------------------------------------------------------- /src/main/java/com/spring/app/modules/auth/services/AuthServiceInterface.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/java/com/spring/app/modules/auth/services/AuthServiceInterface.java -------------------------------------------------------------------------------- /src/main/java/com/spring/app/modules/auth/services/impl/AuthServiceImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/java/com/spring/app/modules/auth/services/impl/AuthServiceImpl.java -------------------------------------------------------------------------------- /src/main/java/com/spring/app/modules/upload/controller/UploadController.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/java/com/spring/app/modules/upload/controller/UploadController.java -------------------------------------------------------------------------------- /src/main/java/com/spring/app/modules/upload/services/UploadServiceInterface.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/java/com/spring/app/modules/upload/services/UploadServiceInterface.java -------------------------------------------------------------------------------- /src/main/java/com/spring/app/modules/upload/services/impl/UploadServiceImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/java/com/spring/app/modules/upload/services/impl/UploadServiceImpl.java -------------------------------------------------------------------------------- /src/main/java/com/spring/app/modules/user/controller/UserController.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/java/com/spring/app/modules/user/controller/UserController.java -------------------------------------------------------------------------------- /src/main/java/com/spring/app/modules/user/dto/requests/UpdateUserDto.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/java/com/spring/app/modules/user/dto/requests/UpdateUserDto.java -------------------------------------------------------------------------------- /src/main/java/com/spring/app/modules/user/mapper/UpdateUserMapper.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/java/com/spring/app/modules/user/mapper/UpdateUserMapper.java -------------------------------------------------------------------------------- /src/main/java/com/spring/app/modules/user/services/UserServiceInterface.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/java/com/spring/app/modules/user/services/UserServiceInterface.java -------------------------------------------------------------------------------- /src/main/java/com/spring/app/modules/user/services/impl/UserService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/java/com/spring/app/modules/user/services/impl/UserService.java -------------------------------------------------------------------------------- /src/main/java/com/spring/app/shared/interfaces/JwtServiceInterface.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/java/com/spring/app/shared/interfaces/JwtServiceInterface.java -------------------------------------------------------------------------------- /src/main/java/com/spring/app/shared/interfaces/MailServiceInterface.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/java/com/spring/app/shared/interfaces/MailServiceInterface.java -------------------------------------------------------------------------------- /src/main/java/com/spring/app/shared/interfaces/RedisServiceInterface.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/java/com/spring/app/shared/interfaces/RedisServiceInterface.java -------------------------------------------------------------------------------- /src/main/java/com/spring/app/shared/services/CustomOAuth2UserService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/java/com/spring/app/shared/services/CustomOAuth2UserService.java -------------------------------------------------------------------------------- /src/main/java/com/spring/app/shared/services/JwtService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/java/com/spring/app/shared/services/JwtService.java -------------------------------------------------------------------------------- /src/main/java/com/spring/app/shared/services/MailService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/java/com/spring/app/shared/services/MailService.java -------------------------------------------------------------------------------- /src/main/java/com/spring/app/shared/services/MonitoringService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/java/com/spring/app/shared/services/MonitoringService.java -------------------------------------------------------------------------------- /src/main/java/com/spring/app/shared/services/RateLimitManagerService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/java/com/spring/app/shared/services/RateLimitManagerService.java -------------------------------------------------------------------------------- /src/main/java/com/spring/app/shared/services/RedisService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/java/com/spring/app/shared/services/RedisService.java -------------------------------------------------------------------------------- /src/main/java/com/spring/app/templates/HtmlTemplateOTPBuilder.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/java/com/spring/app/templates/HtmlTemplateOTPBuilder.java -------------------------------------------------------------------------------- /src/main/java/com/spring/app/utils/JwtFunctionUtil.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/java/com/spring/app/utils/JwtFunctionUtil.java -------------------------------------------------------------------------------- /src/main/java/com/spring/app/utils/OtpFunctionUtil.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/java/com/spring/app/utils/OtpFunctionUtil.java -------------------------------------------------------------------------------- /src/main/resources/META-INF/additional-spring-configuration-metadata.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/resources/META-INF/additional-spring-configuration-metadata.json -------------------------------------------------------------------------------- /src/main/resources/application.example.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/resources/application.example.yml -------------------------------------------------------------------------------- /src/main/resources/db/migrations/V1__create_refresh_tokens.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/resources/db/migrations/V1__create_refresh_tokens.sql -------------------------------------------------------------------------------- /src/main/resources/db/migrations/V1__create_user.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/resources/db/migrations/V1__create_user.sql -------------------------------------------------------------------------------- /src/main/resources/logback-spring.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/resources/logback-spring.xml -------------------------------------------------------------------------------- /src/main/resources/templates/otp-email.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/main/resources/templates/otp-email.html -------------------------------------------------------------------------------- /src/test/java/com/spring/app/BaseSpringApplicationTests.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Nhatnguyen150100/spring-boot-boilerplate/HEAD/src/test/java/com/spring/app/BaseSpringApplicationTests.java --------------------------------------------------------------------------------