PHPackages                             namest/drive - 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. namest/drive

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

namest/drive
============

v0.1(11y ago)012MITPHP

Since Mar 4Pushed 11y ago1 watchersCompare

[ Source](https://github.com/luuhoangnam/drive)[ Packagist](https://packagist.org/packages/namest/drive)[ RSS](/packages/namest-drive/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (1)Dependencies (6)Versions (2)Used By (0)

Getting Started
===============

[](#getting-started)

Provide an *elegant way* to interact with upload &amp; process uploaded file feature.

**Note**: The package is only support Laravel 5

Installation
============

[](#installation)

**Step 1**: Install package

```
composer require namest/drive
```

**Step 2**: Register service provider in your `config/app.php`

```
return [
    ...
    'providers' => [
        ...
        'Namest\Drive\DriveServiceProvider',
    ],
    ...
];
```

**Step 3**: Publish package configs. Open your terminal and type:

```
php artisan vendor:publish --provider="Namest\Drive\DriveServiceProvider"
```

**Step 4**: Edit your appropriate configurations in `config/drive.php`:

**Step 6**: Read API below and start *happy*

API
===

[](#api)

Accept file upload (validate,...)
---------------------------------

[](#accept-file-upload-validate)

```
$file = Drive::accept($input_name);
```

Validation
----------

[](#validation)

```
// Set up validation rules in config file use laravel validation rules
return [
    ...
    'rules' => [
        'max:2048', // Kilobytes
        // Whatever you want
    ],
    ...
];
```

Throws `ValidationException` when failed validation.

Save file (without editing)
---------------------------

[](#save-file-without-editing)

```
$nomal = $file->save();
$large = $file->save('-large'); // With file name suffix
```

Edit image file via method chaining
-----------------------------------

[](#edit-image-file-via-method-chaining)

```
// Recipe: $file->($parameters)
$small = $file->crop($width, $height, $x, $y)
              ->blur($percent)
              ->save('-small');
```

Edit image use profile declare in `drive.profiles` config
---------------------------------------------------------

[](#edit-image-use-profile-declare-in-driveprofiles-config)

```
$avatar = $file->profile('avatar')->save();
```

Auto edit file by profile for particular upload type
----------------------------------------------------

[](#auto-edit-file-by-profile-for-particular-upload-type)

```
// For example: apply `avatar` profile with every uploaded images.
// Edit in `drive` config
return [
    ...
    'default_profiles' => [
        'image' => ['avatar'],
        'video' => [],
    ],
    ...
];
```

###  Health Score

23

—

LowBetter than 27% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity5

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity53

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

Unknown

Total

1

Last Release

4094d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/0b120d989836a5c37a0f9a2558a237d7c14325aa76ba60a24badc402296c220b?d=identicon)[luuhoangnam](/maintainers/luuhoangnam)

---

Top Contributors

[![luuhoangnam](https://avatars.githubusercontent.com/u/5616199?v=4)](https://github.com/luuhoangnam "luuhoangnam (32 commits)")

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/namest-drive/health.svg)

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

###  Alternatives

[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)[spatie/laravel-honeypot

Preventing spam submitted through forms

1.6k6.0M60](/packages/spatie-laravel-honeypot)[intervention/image-laravel

Laravel Integration of Intervention Image

1536.5M102](/packages/intervention-image-laravel)[beyondcode/laravel-favicon

Create dynamic favicons based on your environment settings.

37345.5k](/packages/beyondcode-laravel-favicon)[farhanshares/laravel-mediaman

MediaMan - The most elegant &amp; powerful media management package for Laravel!

293.7k](/packages/farhanshares-laravel-mediaman)[aedart/athenaeum

Athenaeum is a mono repository; a collection of various PHP packages

245.2k](/packages/aedart-athenaeum)

PHPackages © 2026

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