Filesystem abstraction: Many filesystems, one API.

Installs: 90 588 607

Dependents: 1 246

Suggesters: 63

Security: 0

Stars: 10 604

Watchers: 172

Forks: 553

Open Issues: 12

1.0.63 2020-01-04 16:30 UTC


Author Build Status Coverage Status Quality Score Software License Packagist Version Total Downloads

Flysystem is a filesystem abstraction which allows you to easily swap out a local filesystem for a remote one.


  • Have a generic API for handling common tasks across multiple file storage engines.
  • Have consistent output which you can rely on.
  • Integrate well with other packages/frameworks.
  • Be cacheable.
  • Emulate directories in systems that don't support them, like AWS S3.
  • Support third party plugins.
  • Make it easy to test your filesystem interactions.
  • Support streams for big file handling.


composer require league/flysystem


Check out the documentation

Community Integrations

Want to get started quickly? Check out some of these integrations:



  • Ftp
  • Local
  • NullAdapter

Officially Supported

Community Supported

Caching (https://github.com/thephpleague/flysystem-cached-adapter)

  • Adapter (using another Flysystem adapter)
  • Memcached
  • Memory (array caching)
  • Redis (through Predis)
  • Stash


If you discover any security related issues, please email info@frankdejonge.nl instead of using the issue tracker.


Oh and if you've come down this far, you might as well follow me on twitter.