PHPackages                             anomaly/files-module - 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. anomaly/files-module

ActiveStreams-addon[Utility &amp; Helpers](/categories/utility)

anomaly/files-module
====================

Powerful asset management made easy.

v2.7.0(6mo ago)350.9k26[1 issues](https://github.com/anomalylabs/files-module/issues)[1 PRs](https://github.com/anomalylabs/files-module/pulls)4MITPHP

Since Aug 1Pushed 6mo ago2 watchersCompare

[ Source](https://github.com/anomalylabs/files-module)[ Packagist](https://packagist.org/packages/anomaly/files-module)[ Docs](http://pyrocms.com/addons/anomaly/files-module)[ RSS](/packages/anomaly-files-module/feed)WikiDiscussions 2.7 Synced 3w ago

READMEChangelogDependencies (1)Versions (204)Used By (4)

Files Module
============

[](#files-module)

*anomaly.module.files*

#### Powerful asset management made easy.

[](#powerful-asset-management-made-easy)

The Files Module provides comprehensive file and media management with multiple storage adapters and image manipulation capabilities.

Features
--------

[](#features)

- File management interface
- Folder organization
- Multiple storage adapters (local, S3, etc.)
- Image manipulation
- File uploads
- Access control
- Thumbnail generation
- Drag &amp; drop interface

Usage
-----

[](#usage)

### Uploading Files

[](#uploading-files)

```
use Anomaly\FilesModule\File\Contract\FileRepositoryInterface;

$files = app(FileRepositoryInterface::class);

// Upload from request
$file = $files->upload(request()->file('upload'), $folder);

// Create from path
$file = $files->create([
    'name' => 'document.pdf',
    'folder_id' => $folderId,
    'disk_id' => $diskId,
    'path' => 'path/to/file.pdf'
]);
```

### Accessing Files

[](#accessing-files)

```
// Get file by ID
$file = $files->find(1);

// Get file URL
$url = $file->path();

// Get thumbnail
$thumb = $file->thumbnail('small');

// Get image dimensions
$width = $file->width;
$height = $file->height;
```

### In Twig

[](#in-twig)

```
{# Display image #}

{# With image manipulation #}

{# File download link #}
{{ file.name }}

{# Check file type #}
{% if file.isImage() %}

{% endif %}

{# File information #}
Size: {{ file.size_human }}
Type: {{ file.mime_type }}
Uploaded: {{ file.created_at|date('F j, Y') }}
```

### Image Manipulation

[](#image-manipulation)

```
{# Resize #}
{{ image(file).resize(400, 300) }}

{# Fit within bounds #}
{{ image(file).fit(800, 600) }}

{# Crop #}
{{ image(file).crop(200, 200) }}

{# Quality #}
{{ image(file).quality(85) }}

{# Chain methods #}
{{ image(file).fit(600, 400).quality(90).blur(5) }}
```

Requirements
------------

[](#requirements)

- Streams Platform ^1.10
- PyroCMS 3.10+
- GD or Imagick PHP extension

License
-------

[](#license)

The Files Module is open-sourced software licensed under the [MIT license](http://opensource.org/licenses/MIT).

###  Health Score

54

—

FairBetter than 97% of packages

Maintenance59

Moderate activity, may be stable

Popularity33

Limited adoption so far

Community32

Small or concentrated contributor base

Maturity83

Battle-tested with a long release history

 Bus Factor1

Top contributor holds 80% 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 ~18 days

Recently: every ~352 days

Total

204

Last Release

202d ago

Major Versions

v1.1.37 → v2.0.02016-02-18

### Community

Maintainers

![](https://www.gravatar.com/avatar/3dc718dba9317e897b74dcb30e5c06bd106e1ad72b2df5242b66bcc28053fbf3?d=identicon)[anomaly](/maintainers/anomaly)

---

Top Contributors

[![RyanThompson](https://avatars.githubusercontent.com/u/1099967?v=4)](https://github.com/RyanThompson "RyanThompson (176 commits)")[![bloveless](https://avatars.githubusercontent.com/u/535135?v=4)](https://github.com/bloveless "bloveless (11 commits)")[![itinnovative](https://avatars.githubusercontent.com/u/6822319?v=4)](https://github.com/itinnovative "itinnovative (4 commits)")[![MarceauKa](https://avatars.githubusercontent.com/u/1665333?v=4)](https://github.com/MarceauKa "MarceauKa (3 commits)")[![spektra2147](https://avatars.githubusercontent.com/u/39536659?v=4)](https://github.com/spektra2147 "spektra2147 (3 commits)")[![fryiee](https://avatars.githubusercontent.com/u/5254791?v=4)](https://github.com/fryiee "fryiee (3 commits)")[![aidanwatt](https://avatars.githubusercontent.com/u/3669142?v=4)](https://github.com/aidanwatt "aidanwatt (2 commits)")[![JoelESvensson](https://avatars.githubusercontent.com/u/6786740?v=4)](https://github.com/JoelESvensson "JoelESvensson (2 commits)")[![mmodler](https://avatars.githubusercontent.com/u/1906217?v=4)](https://github.com/mmodler "mmodler (2 commits)")[![huglester](https://avatars.githubusercontent.com/u/150731?v=4)](https://github.com/huglester "huglester (2 commits)")[![edster](https://avatars.githubusercontent.com/u/656313?v=4)](https://github.com/edster "edster (2 commits)")[![websemantics](https://avatars.githubusercontent.com/u/2190455?v=4)](https://github.com/websemantics "websemantics (1 commits)")[![aldf](https://avatars.githubusercontent.com/u/11527940?v=4)](https://github.com/aldf "aldf (1 commits)")[![ChristianGiupponi](https://avatars.githubusercontent.com/u/1614796?v=4)](https://github.com/ChristianGiupponi "ChristianGiupponi (1 commits)")[![erhanask](https://avatars.githubusercontent.com/u/77926871?v=4)](https://github.com/erhanask "erhanask (1 commits)")[![jacksun101](https://avatars.githubusercontent.com/u/417021?v=4)](https://github.com/jacksun101 "jacksun101 (1 commits)")[![jhubb-io](https://avatars.githubusercontent.com/u/6826637?v=4)](https://github.com/jhubb-io "jhubb-io (1 commits)")[![kiger](https://avatars.githubusercontent.com/u/2277562?v=4)](https://github.com/kiger "kiger (1 commits)")[![oimken](https://avatars.githubusercontent.com/u/5130712?v=4)](https://github.com/oimken "oimken (1 commits)")[![Piterden](https://avatars.githubusercontent.com/u/5930429?v=4)](https://github.com/Piterden "Piterden (1 commits)")

---

Tags

filesmoduleStreams

### Embed Badge

![Health badge](/badges/anomaly-files-module/health.svg)

```
[![Health](https://phpackages.com/badges/anomaly-files-module/health.svg)](https://phpackages.com/packages/anomaly-files-module)
```

PHPackages © 2026

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