async-aws/simple-s3
AsyncAws Simple S3 is a lightweight wrapper around the AsyncAws S3 client that simplifies common S3 tasks and integrations. Install via Composer and use a higher-level API for working with buckets and objects without the boilerplate of raw S3 calls.
PartSize threshold) for large files (e.g., 5GB+ videos), aligning with future needs for high-throughput media pipelines.Adopt if:
Look elsewhere if:
aws/aws-sdk-php directly.league/flysystem-aws-s3 for broader filesystem abstraction.spatie/laravel-medialibrary for admin interfaces.*"This package lets us ship S3-powered features 3x faster by eliminating boilerplate code for file storage, sharing, and uploads. For example:
*"Pros:
async-aws/s3 to simplify common ops (upload/download/presigned URLs) while exposing the full SDK for edge cases.Trade-offs:
while ($retries++ < 3) { ... }).S3Client.Recommendation: Use for 80% of S3 needs; pair with aws/aws-sdk-php for advanced use cases. Example win: Replace 50+ lines of SDK code for user uploads with 3 lines of SimpleS3Client."*
*"Why this over AWS SDK?
upload() vs. putObject() with 10+ params.Quick start:
// Upload a file
$client->upload('my-bucket', 'user_avatars/123.jpg', fopen('avatar.jpg', 'r'));
// Generate a shareable link
$url = $client->getPresignedUrl('my-bucket', 'report.pdf', '+1 hour');
// Check if a file exists
if ($client->has('my-bucket', 'data.json')) { ... }
Gotchas:
versionId if bucket versioning is enabled.$client->getS3Client() directly.How can I help you explore Laravel packages today?