pdsinterop / flysystem-nextcloud
Flysystem adapter for the Nextcloud filesystem.
Installs: 1 693
Dependents: 0
Suggesters: 0
Security: 0
Stars: 8
Watchers: 3
Forks: 1
Open Issues: 3
Requires
- php: ^8.0
- ext-mbstring: *
- league/flysystem: ^1.0
Requires (Dev)
- nextcloud/server: *
- phpunit/phpunit: ^7|^8|^9
README
Flysystem adapter for the Nextcloud filesystem
Table of Contents
Background
This project is part of the PHP stack of projects by PDS Interop. It is used by the Solid-Nextcloud app.
As the functionality seemed useful for other projects, it was implemented as a separate package.
Installation
The advised install method is through composer:
composer require pdsinterop/flysystem-nextcloud
Usage
This package offers features to interact with the Filesystem provided by Nextcloud through the Flysystem API.
To use the adapter, instantiate it and add it to a Flysystem filesystem:
<?php /** @var IRootFolder $rootFolder */ $folder = $rootFolder->getUserFolder('userId')->get('/some/directory'); // Create the Nextcloud Adapter $adapter = new \Pdsinterop\Flysystem\Adapter\Nextcloud($folder); // Create Flysystem as usual, adding the Adapter $filesystem = new \League\Flysystem\Filesystem($adapter); // Read the contents of a file $content = $filesystem->read('/some.file');
Develop
-
Do not forget to install the required dependencies using
composer
. -
Most of the logic here involves Nextcloud and/or FlySystem. You'll want to familiarise yourself with their workings.
Contribute
Questions or feedback can be given by opening an issue on GitHub.
All PDS Interop projects are open source and community-friendly. Any contribution is welcome! For more details read the contribution guidelines.
All PDS Interop projects adhere to the Code Manifesto as its code-of-conduct. Contributors are expected to abide by its terms.
There is a list of all contributors on GitHub.
For a list of changes see the CHANGELOG or the GitHub releases page.
License
All code created by PDS Interop is licensed under the MIT License.