Gaufrette AWS S3 Adapter

Composer metapackage that adds Amazon S3 storage to the Gaufrette filesystem abstraction

Library
Composer
vv0.4.0
28stars

Repository Health

Pre-computed score based on development activity, maintenance, community, maturity, and trend momentum.How we score it →
26/100Needs Attention
Development Activity0
Maintenance20
Community12
Maturity60
Momentum12

Technical Analysis

AI-assessed by reading the actual repository — architecture, code quality, innovation, and documentation.How we score it →
62/100Good
Architecture62
Code Quality55
Innovation50
Learning Curve80

The Gaufrette AWS S3 adapter is a Composer metapackage that pulls together KnpLabs Gaufrette and the official AWS SDK for PHP so your application can treat an Amazon S3 bucket as a Gaufrette filesystem. Instead of wiring the SDK by hand, you require this single package and get the dependencies needed for the AwsS3 adapter.

Once installed, you interact with S3 through Gaufrette’s uniform filesystem API — reading, writing, listing, and deleting objects with the same code you would use for local disk or other backends. This keeps storage concerns decoupled from your business logic and makes swapping storage backends a configuration change.

What You Get

  • A one-line Composer requirement that brings in Gaufrette plus the AWS SDK for PHP
  • Access to Gaufrette’s AwsS3 adapter for treating buckets as filesystems
  • A uniform read/write/list/delete API shared across all Gaufrette backends
  • Compatibility with AWS SDK for PHP versions 2 and 3
  • The ext-fileinfo dependency required for MIME detection on stored objects

Common Use Cases

  • Storing user uploads in Amazon S3 behind a swappable filesystem abstraction
  • Migrating file storage between local disk and S3 without changing application code
  • Serving and managing static assets kept in an S3 bucket
  • Backing a Symfony application’s media handling with S3 through Gaufrette

Under The Hood

Architecture - The repository contains only a composer.json of type: metapackage and a README; it ships no PHP source. Its role in the architecture is purely at the dependency-resolution layer, guaranteeing that knplabs/gaufrette and aws/aws-sdk-php are installed together so the AwsS3 adapter class (which resides in the Gaufrette library) can be instantiated with an S3 client.

Tech Stack - Requires knplabs/gaufrette (~0.4), aws/aws-sdk-php (v2 or v3), and the PHP fileinfo extension. It is a distribution-time construct with no build tooling, runtime, or language footprint of its own.

Code Quality - As a metapackage there is no application code or test suite to evaluate; correctness reduces to the accuracy of its version constraints. The repository is a subtree split maintained alongside the main KnpLabs/Gaufrette project, where issues and pull requests are actually handled.

API Design - The developer experience is intentionally minimal: composer require gaufrette/aws-s3-adapter provisions everything needed, after which you use Gaufrette’s standard Filesystem and AwsS3 adapter API. All ergonomics and documentation are inherited from Gaufrette itself.

Join founders buildingwith open source

Opinionated takes, migration guides, cost-saving tips, and insights from the open source ecosystem.

Subscribe on Substack
Join 750+ subscribers

Search