nordsoftware / lumen-file-manager
File manager module for the Lumen framework.
Installs: 2 419
Dependents: 2
Suggesters: 0
Security: 0
Stars: 39
Watchers: 14
Forks: 2
Open Issues: 2
Requires
- php: >=5.6
- crisu83/shortid: ~1.0
- nesbot/carbon: ~1.20
Requires (Dev)
- laravel/lumen-framework: ^5.4
Suggests
- doctrine/mongodb-odm: Install to use Doctrine MongoDb ODM as the storage adapter
- doctrine/orm: Install to use Doctrine ORM as the storage adapter
- league/flysystem-aws-s3-v3: Install to use Amazon S3 as the storage adapter
- league/fractal: Install to serialize files using FileTransformer
- nordsoftware/lumen-cloudinary: Install to use Cloudinary as the storage adapter
README
File manager module for the Lumen PHP framework.
Please note that this module is still under active development.
NOTE: Branch 5.1 is for using Lumen Framework 5.1 and 5.2. Only bug fixes for 1.1.X should be tagged here.
Requirements
- PHP 5.6 or newer
- Composer
Usage
Installation
Run the following command to install the package through Composer:
composer require nordsoftware/lumen-file-manager
Bootstrapping
Please note that we only support Doctrine for now, but we plan to add Eloquent support soon.
Add the following lines to bootstrap/app.php
:
$app->register('Nord\Lumen\FileManager\Doctrine\ORM\DoctrineServiceProvider'); // For ORM // $app->register('Nord\Lumen\FileManager\Doctrine\ODM\DoctrineServiceProvider'); // For ODM $app->register('Nord\Lumen\FileManager\FileManagerServiceProvider');
Add base_path('vendor/nordsoftware/lumen-file-manager/src/Doctrine/ORM/Resources')
to your Doctrine mapping paths.
For ODM, add base_path('vendor/nordsoftware/lumen-file-manager/src/Doctrine/ODM/Resources')
.
You can now use the FileManager
facade or inject the Nord\Lumen\FileManager\Contracts\FileManager
where needed.
Example
Below is an example of how to use this module to save a file from the request and return a JSON response with the saved file's ID and URL.
public function uploadFile(Request $request, FileManager $fileManager) { $file = $fileManager->saveFile($request->file('upload')); return Response::json([ 'id' => $file->getId(), 'url' => $fileManager->getFileUrl($file), ]); }
Contributing
Please read the guidelines.
License
MIT. See LICENSE.