MIT Licensed

Secure file managementfor PHP and Symfony

An MIT-licensed file manager with local and S3-compatible storage, granular access control, resilient uploads and image tools.

Install in seconds
Composer
composer require sohophp/sofinder-symfony:^1.1
Actively developed · MIT licensed · PHP 8.2+
30-second quick start

From install to your first file browser

Create a Symfony-authorized local file resource in three focused steps.

01

Install

Bash
composer require sohophp/sofinder-symfony:^1.1
02

Configure storage

YAMLconfig/packages/so_finder.yaml
so_finder:
  resources:
    Files:
      adapter: local
      root: '%kernel.project_dir%/var/files'
      delivery_mode: proxy
      roles: [ROLE_USER]
Provider-independent

Choose storage behind one API

Start locally, then add the independent S3 adapter when needed. The core stays free of cloud-vendor coupling.

Compare storage options
LLocal Storage
S3AWS S3
R2Cloudflare R2
MMinIO
+Other S3-compatible providers
Editor integrations

Keep the picker editor-independent

SoEditor, CKEditor, TinyMCE and custom editors depend only on the public JavaScript API while authorization and storage remain consistent.

SoEditorCKEditor 4CKEditor 5TinyMCECustom editorCustom picker
1Editor
2SoFinder JS API
3SoFinder Backend
4Storage
Explore editor integrations
MIT LicensedPHP 8.2+Symfony 6.4+S3 CompatibleOpen Source

Install in a Symfony application ​

bash
composer require sohophp/sofinder-symfony:^1.1

Existing applications may keep sohophp/sofinder:^1.1, the compatible Meta Package. Both package names expose the same namespace. Register the bundle, import its routes and define at least one storage resource. The installation guide provides a working minimal configuration; the Symfony guide covers authorization, delivery modes, UI options and host-generated URLs.

Supported framework lines

Symfony 6.4/7.4, Laravel 12/13 and the shared PSR-15 hosts are supported full-stack integrations on their documented PHP 8 matrix. Follow the framework integration guide for installable Laravel, Slim, Mezzio and plain PHP examples, and see the framework support policy for the compatibility matrix. The PHP 8 main line is never downgraded for PHP 7.2; Legacy feasibility is evaluated independently.

Choose a storage model ​

RequirementRecommended setup
Public website imagesLocal or S3 storage with delivery_mode: public and an explicit public/CDN URL
Private documentsLocal or S3 storage with delivery_mode: proxy
Recoverable local deletionLocal adapter with the built-in private recycle bin
Recoverable S3 deletionProvider-side bucket versioning and lifecycle protection
Database-owned download URLsConfigure entry_url and provide host application context

Start with the storage adapter guide, or go directly to S3-compatible storage.

Using SoFinder inside a CMS? Start with the CMS editor guide. For every file-management control, continue with the complete user guide and image guide. Building an integration? See the developer guide and HTTP API reference.