[Open Source] A MinIO wrapper and enhancement tool that simplifies development. Enhancements without intrusion.
![[Open Source] A MinIO wrapper and enhancement tool that simplifies development. Enhancements without intrusion.](https://yy123.ink/api/img/1782597066783-91ig35.jpg)
1. Project Overview
MinIO Plus
Our Vision Is to Become the Best Companion to MinIO
MinIO-Plus Is an Enhanced Wrapper for MinIO. It Adds Enhancements Without Modifying or Intruding into MinIO's Source Code. It Was Created to Simplify Development and Improve Efficiency, Serving as a Seamless Integration Layer for MinIO in Projects.
Our Open-Source Principles: We Promise That This Project's License Will Forever Remain Apache License 2.0 . We Promise That This Project Will Remain Free Forever, Including for Commercial Use, with No Charges for Documentation, Upgrades, or Features. We Promise That This Project Will Never Engage in Paid Ranking or Artificially Inflate Star or Fork Counts, Ensuring the Integrity of the Project.
2. Open Source License
Licensed under Apache-2.0
3. Screenshots


4. Feature Overview
MinIO-Plus Is an Enhanced Wrapper for MinIO. It Adds Enhancements Without Modifying or Intruding into MinIO's Source Code. It Was Created to Simplify Development and Improve Efficiency, Serving as a Seamless Integration Layer for MinIO in Projects.
Features | Feature
-
Non-Intrusive : Enhances Without Changing Existing Functionality. Introducing It Will Not Affect Existing Projects, Ensuring Seamless Integration.
-
Instant File Transfer : Generates a hash fingerprint for each uploaded file. When a user uploads an identical file, no actual file data needs to be transferred, enabling instant uploads.
-
Concurrent Uploads : Splits files into smaller chunks and uploads multiple chunks simultaneously, maximizing bandwidth utilization and accelerating upload speeds.
-
Resumable Uploads : If a transfer fails due to an issue, only the incomplete chunks need to be retransmitted, without restarting the entire upload task.
-
Thumbnail Generation : Automatically identifies file types and generates thumbnails when images are uploaded. Thumbnail dimensions can be configured.
-
Automatic Bucket Policies : Automatically creates buckets based on file types such as documents, archives, audio, video, and images. Organizes file paths by year and month to prevent performance degradation caused by operating system file directory limitations.
-
Access Permission Control : Supports file permission management based on users and groups to ensure the security of important files.
-
Access Link Expiration : Uses MinIO's temporary link creation mechanism to provide pre-signed upload and download URLs with configurable expiration times.
-
Direct Frontend Connection : Connects the frontend directly to MinIO, eliminating file stream transfers through the application server while delivering native MinIO performance and supporting all the features above.
-
Excellent compatibility: Supports JDK 1.8 through 17+ and is compatible with both SpringBoot2 and SpringBoot3.
5. Tech Stack
Code Structure
The project is positioned as a Java SDK for MinIO, not an independently deployed service, and supports Spring Boot auto-configuration. Users implement their own data storage layer, while the project provides only a default MySQL implementation.
Module Division

-
minio-plus-api: Defines the interfaces exposed by MinIO Plus, which can be understood as Service layer interface definitions.
-
minio-plus-core: The core business logic package, which implements the interfaces defined in the minio-plus-api package.
-
minio-plus-extension: The extension package, which encapsulates Controller-related interfaces. It can be understood as the Controller layer implementation of the interfaces defined in the minio-plus-api package, making the project ready to use out of the box.
-
minio-plus-common: Utility classes and configuration package.
-
minio-s3-api minio-s3-api-definition: Defines the S3 specification interfaces used by MinIO Plus. minio-s3-api-official: Native SDK implementation. minio-s3-api-custom: Custom implementation.
-
minio-plus-spring-boot-starter minio-plus-all-spring-boot-starter: Includes core, extension, common, and api. minio-plus-core-spring-boot-starter: Includes core, common, and api.
-
minio-plus-application minio-plus-application-official: Example project using the native MinIO SDK with metadata stored in a MySQL database. minio-plus-application-custom: Example project using a custom S3 specification implementation with data stored in a MySQL database.
Source: MinIO Plus Official Documentation