PHPackages                             legiaifenix/arcadia - 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. legiaifenix/arcadia

ActiveLibrary

legiaifenix/arcadia
===================

Arcadia aims to provide a quick image parsing and uploading solution using laravel tooling. The idea is to just pass the file and have everything done for you

0.1.1.0(9y ago)046↓100%MITPHP

Since Feb 4Pushed 5y ago1 watchersCompare

[ Source](https://github.com/legiaifenix/arcadia)[ Packagist](https://packagist.org/packages/legiaifenix/arcadia)[ RSS](/packages/legiaifenix-arcadia/feed)WikiDiscussions master Synced today

READMEChangelogDependenciesVersions (10)Used By (0)

Arcadia
=======

[](#arcadia)

**Created By:** Legiai Fenix **Started At:** 03/02/2017

**Description:**

Arcadia aims to provide a quick image parsing and uploading solution. The idea is to just pass the file and have everything done for you Please note that this package is under development and aims to help the production of developers so they can focus on other aspects of their projects.

**Introduction to the package name:**Arcadia was a greek land that became an imaginary country with time by the hand of many poets and artists. Within Arcadia, reigns happiness, simplicity and beauty. Since the package aims to provide a simple and clean way to manage the images that are sent by clients we though the name was just on spot. We aim to provide simple and clean solutions to real problems, leaving the developers happy.

\##Functionalities

```
    |       Functionality         |    Function Name   |       Variables       |    Returns       |
    |-----------------------------|--------------------|-----------------------|------------------|
    |  Add Images                 |    uploadImage()   |  file_name, path      | false, filename  |
    |  List Images From Folder    |    listImages()    |  folder, amount, type | array            |
    |  Deletes Images From Folder |    deleteImage()   |  image with path      | boolean          |

```

\##Usage

First we are going to need to create a factory that will manage all our functionalities.

This factory will require you to already provide the path you wish to store your images. If not provided it will use default as **public** and **uploads**. It is inspired in the Laravel folder structure where images are sent to the path **/public/**

If you provide the first arguments it will keep your folder structure to store the images:

```
   new ArcadiaFactory('web', 'uploads');

```

We can also specify a limit for the images upload at the end of the variables when creating the factory object. If nothing is specified it will limit to 2MB. In this example we are allowing 50MB. Of course, always make sure your **php.ini** accepts your variables.

```
  new ArcadiaFactory('public', 'uploads', 50000);

```

\##It all starts from somewhere

Arcadia will instanciate a model through the factory initiation. You can access such object to ask it to do the functionalities you desire, by just asking for it via factory:

```
    $arcadiaF->getFactory();

```

\##Uploading an image

We can start uploading an image by passing the field parameter through our factory:

```
    $arcadiaF = new ArcadiaFactory('public', 'uploads');
    $arcadiaF->getFactory()->uploadImage('img');

```

If no path is specified when uploading it will follow a WP structure inside the target folder specified when constructing the factory. But if you wish to specify a different folder you can pass a path into it. What it will do is check the root folder and check if the specified new one exists (will create if don't). Then uploads the file.

```
    $arcadiaF = new ArcadiaFactory('public', 'uploads');
    $arcadiaF->getFactory()->uploadImage('img', 'tmp');

```

Where **img** field exists as **html** file input:

```

```

\##List images from a specific folder

Because we wanted to allow you to list any folder you wish, you are able to specify the amount you wish to load (future development will allow image pagination), from where you wish to list and what type.

Example of listing all svgs from uploads/2017/02:

```
    $factory->getFactory()->listImages('/uploads/2017/02/', -1, 'svg');

```

Example of listing the first 5 jpgs from uploads/2017/02:

```
    $factory->getFactory()->listImages('uploads/2017/02/', 5, 'jpg');

```

Example of returned array:

```
    array(3) {
      [0]=>
      string(80) "/var/www/frame-tester/public/uploads/2017/02/04-02-2017_03-28-42_test_original.jpg"
      [1]=>
      string(80) "/var/www/frame-tester/public/uploads/2017/02/04-02-2017_03-46-13_test_original.jpg"
      [2]=>
      string(80) "/var/www/frame-tester/public/uploads/2017/02/04-02-2017_03-46-18_test_original.jpg"
    }

```

\##Deleting images from a folder

Just pass the path for the image with the image name, the program will delete it from there if it sees it exists. It only allows you to delete images from a folder as it checks if it is an image. Acceptable types are:

```
    svg
    png
    jpeg
    jpg
    gif

```

You can also delete all images from a folder by using the list function in a for loop with the delete:

```
    $list = $factory->getFactory()->listImages('/uploads/2017/02');
    foreach ($list as $item) {
    	$factory->getFactory()->deleteImage($item);
    }

```

Or even just delete .gifs from a folder:

```
    $list = $factory->getFactory()->listImages('/uploads/2017/02', 'gif');
    foreach ($list as $item) {
    	$factory->getFactory()->deleteImage($item);
    }

```

###  Health Score

26

—

LowBetter than 46% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity8

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity59

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.

###  Release Activity

Cadence

Every ~1 days

Total

9

Last Release

3326d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/56bb7d0c2824ab23a51be180730152cb17a65382505d690e82e08e06f76ed24e?d=identicon)[legiaifenix](/maintainers/legiaifenix)

---

Top Contributors

[![legiaifenix](https://avatars.githubusercontent.com/u/19998610?v=4)](https://github.com/legiaifenix "legiaifenix (15 commits)")

### Embed Badge

![Health badge](/badges/legiaifenix-arcadia/health.svg)

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

PHPackages © 2026

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