Skip to content


Subversion checkout URL

You can clone with
Download ZIP
File manager bundle for Symfony2.
PHP Other
branch: develop

Merge pull request #35 from lexxpavlov/patch-1

Update - info about using dev-develop version
latest commit fecdd59dab
@rafalwrzeszcz rafalwrzeszcz authored
Failed to load latest commit information.
Action Simple image viewer.
Block SonataAdminBundle integration block.
Controller Updated PHPUnit and included SensioInsights.
DependencyInjection Support for SensioFrameworkExtraBundle 3.x. [fixes #31][fixes #32]
Filesystem Updated PHPUnit and included SensioInsights.
Form [fixes #22] Simple text editor action handler.
Request/ParamConverter Support for SensioFrameworkExtraBundle 3.x. [fixes #31][fixes #32]
Resources Updated PHPUnit and included SensioInsights.
Templating/Helper Added PHP Mess Detector to QA tools.
Tests Support for SensioFrameworkExtraBundle 3.x. [fixes #31][fixes #32]
Translation Code refactoring to avoid some code duplication.
Utils Code refactoring to avoid some code duplication.
Validator/Constraints Taking request object through parameter instead of DI.
.coveralls.yml Added Coveralls integrations.
.gitignore Delegated messages generation to sub-routine.
.gitmodules Project structure with integration for phpUnit, Travis and phpDocumen…
.travis.yml Added Symfony 2.5 Travis build.
CHANGELOG Release version stuff. 0.1.3 assets. Added symlink to contributors guide to be caught by GitHub.
ChillDevFileManagerBundle.php [fixes #20] Documentation for pluggable file actions handlers.
LICENSE Maintenance update.
Makefile Updated PHPUnit and included SensioInsights.
README Documentation for basic predicted flow. don't -> isn't
composer.json Support for SensioFrameworkExtraBundle 3.x. [fixes #31][fixes #32]
phpunit.xml Added Coveralls integrations.
rules.xml Added PHP Mess Detector to QA tools.

ChillDev FileManager bundle

ChillDevFileManagerBundle is a Symfony2 bundle that provides file management features from your web application.

Build Status Scrutinizer Quality Score Coverage Status Dependency Status SensioLabsInsight


This bundle is provided as Composer package. To install it simply add following dependency definition to your composer.json file:

"chilldev/file-manager-bundle": "dev-master"

Replace dev-master with different constraint if you want to use specific version.

If you are using modern version of Symfony2, use dev-develop version instead of dev-master. (But this version isn't tested properly yet)

Note: This bundle requires PHP 5.4.

Note: You also need default templating engine installed and make sure all required bundles are also loaded in your application. See installation instructions for details about that.


In order to use this bundle, load it in your kernel:


use ChillDev\Bundle\FileManagerBundle\ChillDevFileManagerBundle;

use Symfony\Component\HttpKernel\Kernel as BaseKernel;

class Kernel extends BaseKernel
    public function registerBundles()
        $bundles = [
            new ChillDevFileManagerBundle(),

Include bundle routes:

    resource: "@ChillDevFileManagerBundle/Controller/"
    type: "annotation"
    prefix: "/filemanager"

And then configure your disks:

            label: "Your filesystem"
            source: "/var/www/"

See configuration options for details.



In general, ChillDevFileManagerBundle is end-user ready (or at least should be) component. However there can be some issues related to frontend presentation that you can be interested in (mainly JavaScript-related). For list of things you need to know to get best experience of this bundle UI see usage documentation.

Actions handlers

Another aspect which you may be interested in is implementing own file actions. You can easily extend ChillDevFileManagerBundle to allow additional file actions (even filetype-specific). You can bind your own action handler to specific MIME type by registring your instances of HandlerInterface interface:

class MyHandler implements HandlerInterface
    public function getLabel()
        return 'My action';

    public function supports($mimeType)
        return preg_match('#^image/#', $mimeType) > 0;

    public function handle(Request $request, Disk $disk, $path)
        // handle action request

You can read more detailed info here.


As a bonus, you can integrate ChillDevFileManagerBundle with SonataAdminBundle. You can read about how to do that in this section.



Do you want to help improving this project? Simply fork it and post a pull request. You can do everything on your own, you don't need to ask if you can, just do all the awesome things you want!

This project is published under MIT license.


ChillDevFileManagerBundle is brought to you by Chillout Development.

List of contributors:

Something went wrong with that request. Please try again.