PHPackages                             retroace/storage - 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. retroace/storage

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

retroace/storage
================

Storage adapter for ekcms

0.1.x-dev(4y ago)0861MITPHP

Since Jun 1Pushed 4y ago1 watchersCompare

[ Source](https://github.com/retroace/Ekcdn)[ Packagist](https://packagist.org/packages/retroace/storage)[ RSS](/packages/retroace-storage/feed)WikiDiscussions 0.1 Synced 1mo ago

READMEChangelogDependencies (1)Versions (3)Used By (0)

EKCDN
-----

[](#ekcdn)

This package is a filesystem wrapper for laravel. This make it easy to perform actions like copy, move, upload.

### Introduction

[](#introduction)

This package is a wrapper around the flysystem adapter. This package adds the new flysystem driver `ekcdn-storage`any of the driver using this should have three configs around this apiKey, domainUrl and url.

ApiKey - Api Key of your project url - Domain or your subdomain name domainUrl - Domain of ekcdn

### Usage

[](#usage)

Put these in the .env file and make sure to add the proper urls

```
EKCDN_ASSET_PREFIX_URL=
EKCDN_API_KEY=
EKCDN_STORAGE_URL=https://ekcdn.ekbana.info

```

Replace your subdomain name with subdomain in the url. And put your key in `EKCDN_API_KEY`.

### Uploading File

[](#uploading-file)

To upload file from the config use

```
    Storage::disk('ekcdn')->putFileAs("/user/avatar", Request::file('my_image'), "my_image.png"); // return appropriate file name
    Storage::disk('ekcdn')->putFile("/user/avatar", Request::file('my_image')); // returns random image name with path

```

### Getting File Url

[](#getting-file-url)

To get file url use any of the following

```
    Storage::disk('ekcdn')->url("/user/avatar/my_image.png");
    Storage::disk('ekcdn')->path("/user/avatar/my_image.png");

```

Exception Handling
------------------

[](#exception-handling)

When uploading any assets the exception thrown by the library extends **RuntimeException** of php. The exceptions thrown by system are:

```
Retroace\Storage\Exceptions\CorsException
Retroace\Storage\Exceptions\DomainNotAllowedException
Retroace\Storage\Exceptions\ExceededDiskUsageException
Retroace\Storage\Exceptions\FileNotAllowedException
Retroace\Storage\Exceptions\FileNotFoundException
Retroace\Storage\Exceptions\FilePostLimitException
Retroace\Storage\Exceptions\InvalidApiKeyException
Retroace\Storage\Exceptions\UnverifiedUserException
\Exception

```

###  Health Score

21

—

LowBetter than 18% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity10

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity39

Early-stage or recently created project

 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.

###  Release Activity

Cadence

Every ~0 days

Total

2

Last Release

1804d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/3d5cd672836dc1ca659bc887f123d5111dac293f9c25a4e5a22f759b788acd61?d=identicon)[retroace](/maintainers/retroace)

---

Top Contributors

[![retroace](https://avatars.githubusercontent.com/u/29798219?v=4)](https://github.com/retroace "retroace (6 commits)")

### Embed Badge

![Health badge](/badges/retroace-storage/health.svg)

```
[![Health](https://phpackages.com/badges/retroace-storage/health.svg)](https://phpackages.com/packages/retroace-storage)
```

###  Alternatives

[league/flysystem-aws-s3-v3

AWS S3 filesystem adapter for Flysystem.

1.6k263.6M790](/packages/league-flysystem-aws-s3-v3)[unisharp/laravel-filemanager

A file upload/editor intended for use with Laravel 5 to 10 and CKEditor / TinyMCE

2.2k3.3M74](/packages/unisharp-laravel-filemanager)[league/flysystem-local

Local filesystem adapter for Flysystem.

226231.8M39](/packages/league-flysystem-local)[league/flysystem-bundle

Symfony bundle integrating Flysystem into Symfony applications

40029.5M87](/packages/league-flysystem-bundle)[league/flysystem-sftp-v3

SFTP filesystem adapter for Flysystem.

6129.6M91](/packages/league-flysystem-sftp-v3)[league/flysystem-memory

In-memory filesystem adapter for Flysystem.

8533.6M194](/packages/league-flysystem-memory)

PHPackages © 2026

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