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(3y ago)018MITPHP

Since Aug 6Pushed 3y ago1 watchersCompare

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

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

24

—

LowBetter than 31% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity6

Limited adoption so far

Community9

Small or concentrated contributor base

Maturity54

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

1442d 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

[desandro/imagesloaded

JavaScript is all like \_You images done yet or what?\_

8.9k449.7k1](/packages/desandro-imagesloaded)[rappasoft/laravel-livewire-tables

A dynamic table component for Laravel Livewire

2.0k2.9M31](/packages/rappasoft-laravel-livewire-tables)[szeidler/composer-patches-cli

28259.3k4](/packages/szeidler-composer-patches-cli)[wa72/html-pretty-min

HTML minifier and indenter that works on the DOM tree

22231.3k8](/packages/wa72-html-pretty-min)[veewee/reflecta

Unleash the Power of Optics in your code!

13422.0k7](/packages/veewee-reflecta)[apen/additional_reports

Useful information in the reports module : xclass, ajax, cliKeys, eID, general status of the system (encoding, DB, php vars...), hooks, compare local and TER extension (diff), used content type, used plugins, ExtDirect... It can really help you during migration or new existing project (to have a global reports of the system).

14167.3k](/packages/apen-additional-reports)

PHPackages © 2026

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