PHPackages                             pallares/laravel-storage-safe - 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. pallares/laravel-storage-safe

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

pallares/laravel-storage-safe
=============================

3.0.0(8y ago)017.4kPHPPHP ^5.5.9 || ^7.0

Since Jul 10Pushed 8y agoCompare

[ Source](https://github.com/skyrpex/laravel-storage-safe)[ Packagist](https://packagist.org/packages/pallares/laravel-storage-safe)[ RSS](/packages/pallares-laravel-storage-safe/feed)WikiDiscussions master Synced 2w ago

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

Laravel Storage Safe
====================

[](#laravel-storage-safe)

This package offers a storage-safe application to substitute the one that comes with Laravel 5.2.

> A storage-safe application creates the required storage directories in a temporary directory. This directory is named using a hash of the user ID who executes the script and the absolute path to the original application.

Installation
------------

[](#installation)

`composer require pallares/laravel-storage-safe`

Usage
-----

[](#usage)

> It is NOT recommended to use this application directly in production environments, as it will slow down the startup process.

In order to use it with minimal impact, please amend the `bootstrap/app.php` file:

```
// ...

// Laravel may fail to use the storage if the user who executes
// the script is different from the user who owns this file.
$app = function_exists('posix_geteuid') && (posix_geteuid() !== fileowner(__FILE__))
    ? new Pallares\Laravel\StorageSafe\Application(realpath(__DIR__.'/../'))
    : new Illuminate\Foundation\Application(realpath(__DIR__.'/../'));

// ...
```

The snippet above will use the storage-safe application on Posix systems and only when the user that executes the script is different than the user of the current file.

Of course, you can use your own methods to check this scenario. For example, I can safely tell that I'll need the storage-safe app if the directory where the code is begins with `/home/`. This check is faster than calling `posix_*` and `fileowner`.

Why this package?
-----------------

[](#why-this-package)

Chances are that you don't need this package. I do because I have certain environments where the Apache's daemon user writes inside my current app's storage.

Chmod'ing the storage directory won't solve my problem as I'm not a sudo'er, so I can't remove deamon's files 💩.

###  Health Score

31

—

LowBetter than 65% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity20

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity63

Established project with proven stability

 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 ~17 days

Recently: every ~26 days

Total

7

Last Release

3215d ago

Major Versions

1.0.1 → 2.0.02017-07-11

v2.x-dev → v3.x-dev2017-08-16

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/1077520?v=4)[Cristian Pallarés](/maintainers/skyrpex)[@skyrpex](https://github.com/skyrpex)

---

Top Contributors

[![skyrpex](https://avatars.githubusercontent.com/u/1077520?v=4)](https://github.com/skyrpex "skyrpex (2 commits)")

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/pallares-laravel-storage-safe/health.svg)

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

###  Alternatives

[statamic-rad-pack/runway

Eloquently manage your database models in Statamic.

137236.2k8](/packages/statamic-rad-pack-runway)[duncanmcclean/statamic-cargo

Comprehensive e-commerce addon for Statamic. Build bespoke e-commerce sites without the complexity.

3622.8k](/packages/duncanmcclean-statamic-cargo)[api-platform/laravel

API Platform support for Laravel

58190.1k21](/packages/api-platform-laravel)[ecotone/laravel

Ecotone for Laravel — CQRS, Event Sourcing, Sagas, Durable Workflows, and Outbox on top of Laravel Queue, via PHP attributes.

21327.3k4](/packages/ecotone-laravel)[slimani/filament-media-manager

A media manager plugin for Filament.

179.7k1](/packages/slimani-filament-media-manager)

PHPackages © 2026

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