PHPackages                             spm/zipper - 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. [Utility &amp; Helpers](/categories/utility)
4. /
5. spm/zipper

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

spm/zipper
==========

Zip to all files in a folder and its subfolders recursively

1.1.2(4y ago)018MITPHP

Since Aug 6Pushed 4y ago1 watchersCompare

[ Source](https://github.com/projectSPM/zipper)[ Packagist](https://packagist.org/packages/spm/zipper)[ RSS](/packages/spm-zipper/feed)WikiDiscussions master Synced 1w ago

READMEChangelog (1)DependenciesVersions (5)Used By (0)

SPM Zipper
==========

[](#spm-zipper)

ZPM Zipper is a laravel package.

Its main function are: 1 - recursively zip files from a folder and its subfolders. The structure of the zip will coincide with that of the route sent to the package.

2 - Unzip a zip file to a specific path

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

[](#installation)

Use composer to install ZPM Zipper.

```
composer require spm/zipper
```

Usage
-----

[](#usage)

```
# Providers to add

Spm\Zipper\ZipperServiceProvider:class

#Facade to add

'Zipper' => Spm\Zipper\Facades\Zipper::class

# Set the path and name of the new zip file

$zip_file_name = public_path() . '\exports\file_name.zip';

Zipper::setFileName($zip_file_name)

# Add all folders to zip file
# They can be in different locations as long as they are indicated in the array

$folders_to_zip = [
   public_path() . '\storage\general',
   public_path() . '\storage\home',
];

Zipper::setFoldersToZip($folders_to_zip)

# Make the zip file

Zipper::makeZip();

# Set path to the zip file to unzip

$path_to_zipFile = $request->file('excel-file')->path();

Zipper::setPathToZipFile($path_to_zipFile)

# Set path to the unzipped file result

$path_to_unZip = public_path('storage\import');

Zipper::setPathToUnzip($path_to_unZip)

# Make de unzip file

Zipper::unZipFile()
```

Contributing
------------

[](#contributing)

Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.

License
-------

[](#license)

[MIT](./LICENSE.md)

###  Health Score

25

—

LowBetter than 35% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity6

Limited adoption so far

Community9

Small or concentrated contributor base

Maturity55

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 66.7% 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 ~117 days

Total

4

Last Release

1487d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/41eeeee3049d33fc79afac7578435bd2a5d8ff55b664bffc1125bbfdb4c545b8?d=identicon)[SPMProyects](/maintainers/SPMProyects)

---

Top Contributors

[![santiagopereyramarchetti](https://avatars.githubusercontent.com/u/63074615?v=4)](https://github.com/santiagopereyramarchetti "santiagopereyramarchetti (6 commits)")[![projectSPM](https://avatars.githubusercontent.com/u/88519304?v=4)](https://github.com/projectSPM "projectSPM (3 commits)")

### Embed Badge

![Health badge](/badges/spm-zipper/health.svg)

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

###  Alternatives

[yassi/nova-nested-form

A Laravel Nova package that allows you to create/update/delete nested related fields from a parent form.

239508.6k](/packages/yassi-nova-nested-form)[thamtech/yii2-uuid

Yii 2 UUID Helper

35370.4k7](/packages/thamtech-yii2-uuid)[reefki/laravel-device-detector

Laravel wrapper for Matomo's Universal Device Detection library.

3182.4k](/packages/reefki-laravel-device-detector)[trentrichardson/cakephp-scheduler

Makes scheduling tasks in CakePHP much simpler.

3144.4k](/packages/trentrichardson-cakephp-scheduler)[collegeman/fuerte

2527.0k](/packages/collegeman-fuerte)[jenner/array_group_by

like mysql group by

428.0k](/packages/jenner-array-group-by)

PHPackages © 2026

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