Installation
Two commands, no configuration, and nothing happens until you ask it to.
Install
composer require justinholtweb/craft-nuke
php craft plugin/install nuke
Or find Nuke in the Plugin Store and install it from the control panel. It arrives in the free Lite edition.
Requirements
- Craft CMS 5.3 or later
- PHP 8.2 or later
- MySQL or PostgreSQL — both are supported, and the handful of sweepers that cannot run on one will say so rather than fail
There are no runtime dependencies beyond Craft, and the install migration creates exactly one table: nuke_runs, the ledger.
Switching to Pro
Buy a Pro license in the Plugin Store, or switch edition from the control panel while you are trying it. Scheduled sweeps and emailed reports start working immediately; everything else was already there.
The first thing to do
Not a strike. Go to Nuke → Sweep, leave the tasks as they are, and press Scan. Nothing is removed, and you get a report of what a housekeeping pass would find on this site right now — how many rows are sitting in the trash, how much of the disk your database backups have taken, how many revisions exist for content nobody has edited since 2021.
It is the cheapest possible introduction to what the plugin does, and on most established sites the numbers are surprising.
Then set the guardrails
Before anyone runs a strike in anger, spend five minutes in Nuke → Settings → Guardrails:
- Protected scopes — name the handles of anything that must never be targeted, one per line.
- Most elements one strike may delete — the default ceiling is 10,000. Lower it if that is more than any legitimate run on this site would ever touch.
- Permissions — by default nobody but an admin can do anything. Decide who gets
nuke:viewand who getsnuke:strike; they are deliberately separate.
Uninstalling
Uninstalling drops the nuke_runs table and takes the run history with it. Nothing Nuke deleted comes back, and nothing it deleted was ever stored here — but if the ledger matters to you as an audit record, export it first. storage/logs/nuke.log is untouched by an uninstall, which is part of why it exists.