PHPackages                             web-vision/wv\_file\_cleanup - 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. web-vision/wv\_file\_cleanup

ActiveTypo3-cms-extension[Utility &amp; Helpers](/categories/utility)

web-vision/wv\_file\_cleanup
============================

Enables cleanup of unused fal records.

2.0.1(1y ago)211.8k↓46.7%13[1 PRs](https://github.com/web-vision/wv_file_cleanup/pulls)GPL-3.0+PHPPHP &gt;=7.4 || &gt;= 8.0CI passing

Since Oct 24Pushed 4mo ago9 watchersCompare

[ Source](https://github.com/web-vision/wv_file_cleanup)[ Packagist](https://packagist.org/packages/web-vision/wv_file_cleanup)[ Docs](https://web-vision.de)[ RSS](/packages/web-vision-wv-file-cleanup/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (4)Dependencies (5)Versions (4)Used By (0)

About
=====

[](#about)

German:

Die TYPO3 Extension “FAL File Cleanup” bietet eine einfache Möglichkeit, unbenutzte Dateien im TYPO3 System zu identifizieren und automatisch aufzuräumen. Ein TYPO3 Scheduler Task führt dabei regelmäßig Prüfungen im System durch, und gleich die verlinkten Dateien (Dateireferenzen) mit den vorhandenen Dateien im Fileadmin von TYPO3 ab. Auf Wunsch können diese regelmäßigen Prüfungen auch auf bestimmte Datei-Endungen beschränkt werden. Sind Dateien identifiziert, welche keine Verlinkung in Inhalten des TYPO3 System besitzen, können diese wahlweise direkt gelöscht, zuerst in einen Papierkorb verschoben und nach definierbaren Intervallen (z.B. nach 30 Tagen) verspätet gelöscht werden.

---

English:

The TYPO3 extension "FAL File Cleanup" offers an easy way to identify and automatically clean up unused files in the TYPO3 system. A TYPO3 scheduler task carries out regular checks in the system and compares the linked files (file references) with the existing files in the TYPO3 file admin. If desired, these regular checks can also be limited to certain file endings. If files are identified which do not have a link in the TYPO3 system content, they can be deleted directly, moved to a recycle bin first and deleted after definable intervals (e.g. after 30 days).

How to use
==========

[](#how-to-use)

After installing ext:wv\_file\_cleanup a new BE module appears under "File".

Also, the symfony commands `wv_file_cleanup:cleanup` and `wv_file_cleanup:emptyrecycler` will be available.

Example of using the command controllers::

```
./typo3/sysext/core/bin/typo3 wv_file_cleanup:cleanup 1:/ -r --verbose
./typo3/sysext/core/bin/typo3 wv_file_cleanup:emptyrecycler 1:/ -a 1month --verbose

```

It is recommended to use the commands in a CLI context, but they can also be setup in the *scheduler* as scheduler tasks.

Options
-------

[](#options)

You can configure an fileNameDenyPattern that holds a regular expression that is used to check the filename against. If the pattern matches the file is excluded from the cleanup and also not visible in het BE module.

Default value is `/index.html/i` so all `index.html` files are excluded and can be adjusted in the extension configuration (see extension manager).

The value can also be overwritten in the command controller (and scheduler task).

Examples
--------

[](#examples)

To only match `*.pdf` files you can set the fileNameDenyPattern to `/^(?!.*\b.pdf\b)/`

Can be tested by executing this from CLI:

```
./typo3/sysext/core/bin/typo3 wv_file_cleanup:cleanup 1:/ --verbose --dry-run --file-deny-pattern='/^(?!.*\b.pdf\b)/'

```

###  Health Score

46

—

FairBetter than 93% of packages

Maintenance56

Moderate activity, may be stable

Popularity31

Limited adoption so far

Community23

Small or concentrated contributor base

Maturity65

Established project with proven stability

 Bus Factor3

3 contributors hold 50%+ of commits

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

Total

3

Last Release

698d ago

Major Versions

1.0.1 → 2.0.12024-06-19

### Community

Maintainers

![](https://www.gravatar.com/avatar/d181bb4173be1b70cabf0b41497a7cabecdccc5966c8000e40b12ce8b7a5ebac?d=identicon)[web-vision](/maintainers/web-vision)

---

Top Contributors

[![sbuerk](https://avatars.githubusercontent.com/u/1453466?v=4)](https://github.com/sbuerk "sbuerk (21 commits)")[![calien666](https://avatars.githubusercontent.com/u/11405116?v=4)](https://github.com/calien666 "calien666 (15 commits)")[![frans-beech-it](https://avatars.githubusercontent.com/u/4436635?v=4)](https://github.com/frans-beech-it "frans-beech-it (13 commits)")[![Riiiad](https://avatars.githubusercontent.com/u/20195182?v=4)](https://github.com/Riiiad "Riiiad (9 commits)")[![derhansen](https://avatars.githubusercontent.com/u/2629896?v=4)](https://github.com/derhansen "derhansen (7 commits)")[![DavidBruchmann](https://avatars.githubusercontent.com/u/999146?v=4)](https://github.com/DavidBruchmann "DavidBruchmann (4 commits)")[![rickymathewkweb](https://avatars.githubusercontent.com/u/59689479?v=4)](https://github.com/rickymathewkweb "rickymathewkweb (4 commits)")[![borishinzer](https://avatars.githubusercontent.com/u/10340538?v=4)](https://github.com/borishinzer "borishinzer (4 commits)")[![Andreas-Sommer](https://avatars.githubusercontent.com/u/30976558?v=4)](https://github.com/Andreas-Sommer "Andreas-Sommer (1 commits)")[![georgringer](https://avatars.githubusercontent.com/u/1905663?v=4)](https://github.com/georgringer "georgringer (1 commits)")[![hannesbochmann](https://avatars.githubusercontent.com/u/6302628?v=4)](https://github.com/hannesbochmann "hannesbochmann (1 commits)")

###  Code Quality

Static AnalysisPHPStan

Code StylePHP CS Fixer

Type Coverage Yes

### Embed Badge

![Health badge](/badges/web-vision-wv-file-cleanup/health.svg)

```
[![Health](https://phpackages.com/badges/web-vision-wv-file-cleanup/health.svg)](https://phpackages.com/packages/web-vision-wv-file-cleanup)
```

###  Alternatives

[in2code/powermail

Powermail is a well-known, editor-friendly, powerful and easy to use mailform extension for TYPO3 with a lots of features

982.5M38](/packages/in2code-powermail)[fluidtypo3/flux

The flux package from FluidTYPO3

152982.2k20](/packages/fluidtypo3-flux)[friendsoftypo3/content-blocks

TYPO3 CMS Content Blocks - Content Types API | Define reusable components via YAML

96374.6k23](/packages/friendsoftypo3-content-blocks)[derhansen/sf_event_mgt

Configurable event management and registration extension based on ExtBase and Fluid

64313.9k6](/packages/derhansen-sf-event-mgt)[typo3/cms-t3editor

TYPO3 CMS T3Editor - JavaScript-driven editor with syntax highlighting and code completion. Based on CodeMirror.

115.9M50](/packages/typo3-cms-t3editor)[wazum/sluggi

TYPO3 extension for URL slug management with inline editing, auto-sync, locking, access control, and redirects

39488.5k](/packages/wazum-sluggi)

PHPackages © 2026

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