Workbench Cleanup
clarkwinkelmann/flarum-ext-workbench-cleanup
Inspect and delete unused files in the development workbench folder
- Downloads
- 72
- Version control
- github.com/clarkwinkelmann/flarum-ext-workbench-cleanup
Workbench Cleanup
Offers a simple page to inspect the space used by folders in the development workbench folder with quick shortcuts to delete node_modules
and vendor
sub-folders to free up space.
The list of folders to scan will be automatically pulled from composer.json
, looking for any repository of type
: path
.
Alternatively, a list of folders can be specified in the admin panel, those folders can be any path on disk, not restricted to Flarum installation root.
All features are restricted to admin users only so it should be safe even if you use it on publicly accessible forums, though I would not recommend it.
Note than an admin can bring offline the forum or other Composer-based apps on the server by modifying the folder to point to a Flarum installation root and deleting the production vendor
folder.
All data deleted by the extension can be restored by running composer install
(and yarn install
/ npm i
) again.
Known limitations:
- If an extension uses unconventional or multiple javascript source folders, the additional
node_module
folders will not be picked up, they will count as code in the total and will not be deleted when clearing all. - The more data the workbench folder contains, the longer the list will take to load. You might need to adjust your max execution time.
- All strings have been hard-coded, the extension cannot be translated.
Requirements
This extension was designed for my personal development setup on Linux but might work on other Unix-compatible systems.
- Operating system with forward-slash folder paths
-
du
(disk usage) command-line utility - PHP 8.0+
-
shell_exec
PHP access - Flarum 1.2+ (but can scan older forums on the same server by specifying custom workbench folders)
Installation
composer require clarkwinkelmann/flarum-ext-workbench-cleanup
Support
This extension is under minimal maintenance.
It was developed for a client and released as open-source for the benefit of the community. I might publish simple bugfixes or compatibility updates for free.
You can contact me to sponsor additional features or updates.
Support is offered on a "best effort" basis through the Flarum community thread.
Links
Versions
-
Version 1.1.0.
Likely works with Flarum v1.8.9.
Unlikely to work with Flarum v2.0.0-beta.1.
-
1 additional versions.
-
Extension created.