PHPackages                             djordje/li3\_filesystem - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [File &amp; Storage](/categories/file-storage)
4. /
5. djordje/li3\_filesystem

ActiveLithium-library[File &amp; Storage](/categories/file-storage)

djordje/li3\_filesystem
=======================

File management (file browser) for Lithium PHP framework

18PHP

Since Jul 20Pushed 12y ago1 watchersCompare

[ Source](https://github.com/djordje/li3_filesystem)[ Packagist](https://packagist.org/packages/djordje/li3_filesystem)[ RSS](/packages/djordje-li3-filesystem/feed)WikiDiscussions master Synced 2mo ago

READMEChangelogDependenciesVersions (1)Used By (0)

#### li3\_filesystem - File management for the [Lithium PHP framework](https://github.com/UnionOfRAD/lithium)

[](#li3_filesystem---file-management-for-the-lithium-php-framework)

[![Latest Stable Version](https://camo.githubusercontent.com/855f382657b79c855100c02ae776313b21bb46bd6528b61d478370fc39991a78/68747470733a2f2f706f7365722e707567782e6f72672f646a6f72646a652f6c69335f66696c6573797374656d2f762f737461626c652e706e67)](https://packagist.org/packages/djordje/li3_filesystem)[![Build Status](https://camo.githubusercontent.com/58b02559e2a6ed193ea0a774203ccb49f50a0d9e93682b71ec4f06aac3baaf94/68747470733a2f2f7472617669732d63692e6f72672f646a6f72646a652f6c69335f66696c6573797374656d2e706e673f6272616e63683d6d6173746572)](https://travis-ci.org/djordje/li3_filesystem)

This library enable easy file operations in the Lithium PHP framework.

This is based on extracted and better organized logic from [li3\_filemanager](https://github.com/djordje/li3_filemanager)withoud controllers and views. So you can use it in your app's or library to perform file operations. You can also make file browser on top of this library, or you can use `li3_filemanager` that will be basic file browser implementation on top of this library. You can extend this library to support your storage system by creating new adapter that should extend `li3_filesystem\storage\filesystem\Source` and implement all abstract methods defined in `Source`.

#### Installation

[](#installation)

**1a.** You can install it trough composer:

```
{
    "require": {
        "djordje/li3_filesystem": "dev-master"
    }
}
```

**1b.** Or you can clone git repo to any of your libraries dir:

```
cd libraries
git clone git://github.com/djordje/li3_filesystem.git

```

**2.** Add it to your app's `bootstrap/libraries.php` file:

```
// backend routes with default prefix `backend`
Libraries::add('li3_filesystem');
```

**3.** Define named location

```
// Example that use Filesystem adapter to access img dir in app's webroot
li3_filesystem\storage\Locations::add('webroot_img', array(
	'adapter' => 'Filesystem',
    'url' => 'http://example.com/img/',
    'location' => LITHIUM_APP_PATH . '/webroot/img'
));
```

#### Included adapters

[](#included-adapters)

You define adapter with `'adapter'` key passed to location's option array.

###### Filesystem

[](#filesystem)

This is adapter that enable file operations on local file system. You will proabably use this adapter most of the time.

**Oprion keys that will be used by this adapter**

- `'location'` - path to root of location eg. `LITHIUM_APP_PATH . '/webroot/img'`
- `'url'` - *optional*, pass absolute link to root of location eg. `'http://example.com/img/'`and all files will concatonate path to this url and enable you to get `$entity->url`.

#### Create your own adapters

[](#create-your-own-adapters)

You can writte your own adapters to support your storage system, or change some logic.

Your adapter must be locateable by `lithium\core\Libraries::locate('adapter.storage.filesystem');`and inherits from `li3_filesystem\storage\filesystem\Source`. `Source` abstract class has defined abstarct methods that all adapters must implement `ls`, `mkdir`, `upload`, `copy`, `move`, `remove` to enable proper functionality with base model `li3_filesystem\storage\FS` and filesystem entity `li3_filesystem\storage\filesystem\Entity`.

###  Health Score

20

—

LowBetter than 14% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity6

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity41

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

### Community

Maintainers

![](https://www.gravatar.com/avatar/936366059f593fa9a53c2d9803e62c9046796ad007970deb4cbca4b52dba9e93?d=identicon)[djordje](/maintainers/djordje)

---

Top Contributors

[![djordje](https://avatars.githubusercontent.com/u/1223357?v=4)](https://github.com/djordje "djordje (9 commits)")

### Embed Badge

![Health badge](/badges/djordje-li3-filesystem/health.svg)

```
[![Health](https://phpackages.com/badges/djordje-li3-filesystem/health.svg)](https://phpackages.com/packages/djordje-li3-filesystem)
```

###  Alternatives

[knplabs/gaufrette

PHP library that provides a filesystem abstraction layer

2.5k39.8M123](/packages/knplabs-gaufrette)[google/cloud-storage

Cloud Storage Client for PHP

34390.8M125](/packages/google-cloud-storage)[illuminate/filesystem

The Illuminate Filesystem package.

15261.6M2.6k](/packages/illuminate-filesystem)[superbalist/flysystem-google-storage

Flysystem adapter for Google Cloud Storage

26320.6M30](/packages/superbalist-flysystem-google-storage)[creocoder/yii2-flysystem

The flysystem extension for the Yii framework

2931.7M62](/packages/creocoder-yii2-flysystem)[flowjs/flow-php-server

PHP library for handling chunk uploads. Works with flow.js html5 file uploads.

2451.6M15](/packages/flowjs-flow-php-server)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
