Go client SDK for interacting with Amazon S3 compatible object storage services.
MinIO Go Client SDK is a Go library that provides a comprehensive set of APIs for Go applications to interact with any Amazon S3 compatible object storage service. It enables developers to build applications that can store and retrieve data from MinIO, AWS S3, and other S3-compatible storage solutions with a consistent and straightforward interface.
Go developers building applications that need to interact with S3-compatible object storage services, including those using MinIO, AWS S3, or other S3-compatible cloud storage providers.
Developers choose this SDK for its comprehensive S3 API coverage, idiomatic Go design, and support for both standard S3 operations and MinIO-specific extensions like real-time bucket notifications. It offers a minimal, consistent interface that works across multiple storage providers.
MinIO Go client SDK for S3 compatible object storage
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Works with any Amazon S3 compatible service, including MinIO and AWS S3, providing a consistent interface across multiple storage providers, as emphasized in the README.
Covers a wide range of S3 operations, from bucket management to object upload/download, presigned URLs, and lifecycle policies, with detailed API references listed.
Includes FPutObject and FGetObject methods for easy file-based operations, simplifying common tasks like uploading local files without manual streaming.
Offers additional functionality like ListenBucketNotification for real-time event handling on MinIO servers, enhancing integration with MinIO ecosystems.
Documentation is split between godoc and MinIO's own API reference, which can make it challenging to find comprehensive, unified guides for all features.
While comprehensive, it may lack support for some newer or niche S3 features compared to the official AWS SDK, such as S3 Select or advanced encryption options not explicitly covered.
Features like ListenBucketNotification are MinIO-specific, potentially locking users into MinIO if they rely on these extensions, reducing portability to other S3 services.