Skip to content
View in the app

A better way to browse. Learn more.

Unraid

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

[Plugin] Appdata Cleanup Plus

Featured Replies

Appdata Cleanup Plus - Pre-CA-store Release

Appdata Cleanup Plus is an Unraid plugin for finding orphaned appdata folders left behind by removed Docker containers, then letting you review them safely before doing anything destructive.

This is the pre-CA-store release thread for testing, feedback, and support.

Image

image.png

What it does

- Scans saved Docker templates and current container mappings

- Finds orphaned appdata paths that no longer match installed containers

- Shows folder size, last updated time, and why a path was flagged

- Lets you ignore paths you never want surfaced again

- Supports dry run before any real action

- Uses quarantine as the default real action

- Supports permanent delete only when explicitly enabled

Safety model

- Dry run previews the current action without changing files

- Quarantine is the default real action

- Outside-share cleanup stays locked unless you enable it

- Permanent delete stays locked unless you enable it

- Actions run from a server-side snapshot, not client-posted paths

- CSRF validation and server-side path checks are enforced

- Share roots, mount points, symlinks, and unsafe targets are blocked

Requirements

- Unraid 7.0.0+

- Docker templates present in /boot/config/plugins/dockerMan/templates-user/

Current status

- Pre-CA-store release

- Looking for testing feedback on scan accuracy, theme behavior, and safety flow

- Main goal is making cleanup safer and easier to review before anything destructive happens

Feedback that is especially useful

- False positives or missed orphaned folders

- Theme/layout issues on Black, Azure, Gray, or White

- Quarantine and dry run workflow feedback

- Any path that you think should have been blocked but was offered

Project links

- GitHub repo: https://github.com/alexphillips-dev/Appdata-Cleanup-Plus

- Issues: https://github.com/alexphillips-dev/Appdata-Cleanup-Plus/issues

  • Replies 90
  • Views 5.9k
  • Created
  • Last Reply

Top Posters In This Topic

Most Popular Posts

  • skywalker6705
    skywalker6705

    Like with your other project, Folderview Plus, this feels distinctly vibe coded on top of an existing app to "enhance" it. I have some serious reservations about using this given that you haven't dis

  • The old version was a much better no frills plugin....

  • Unraid-arr
    Unraid-arr

    Agree, 100%. I reached here because Fix Common Problems showed me the deprecated warning today. I see no reason to remove the old and install the new plugin. This plugin is trying to solve a problem t

Posted Images

Is this a companion plugin to Appdata Cleanup or a replacement?

  • Author
9 hours ago, chodeus said:

Is this a companion plugin to Appdata Cleanup or a replacement?

It’s an up to date replacement with more safety conscious features in mind.

should I uninstall original Appdata Cleanup first before installing this plugin?

Like with your other project, Folderview Plus, this feels distinctly vibe coded on top of an existing app to "enhance" it.

I have some serious reservations about using this given that you haven't disclosed any use of AI in the process at all.

hi sorry. just wondering. is it normal to not have a title like the other plugins? my ocd is triggering haha

image.png

  • Author
8 hours ago, hbpary said:

should I uninstall original Appdata Cleanup first before installing this plugin?

Yes, please uninstall the original plugin as this is a replacement.

  • Author
2 minutes ago, i1mran92 said:

hi sorry. just wondering. is it normal to not have a title like the other plugins? my ocd is triggering haha

image.png

Thanks for pointing that out. I will get it resolved with a title.

The upcoming release will have more safety measures as well.

  • Author

Appdata Cleanup Plus 2026.03.30.48

This main release rolls up everything that landed after the previous stable main release, 2026.03.27.24. The focus for this cycle was scan reliability, quarantine workflow depth, live result updates, and a long pass on compacting and cleaning up the Unraid Settings UI.

New Workflow Additions

- Added a dedicated Quarantine manager with tracked quarantine records, restore actions, and purge actions.

- Added popup audit history so cleanup, restore, and purge events can be reviewed without leaving the dashboard.

- Added an Action bar that surfaces quarantine and history access in one place.

- Added Show ignored handling so hidden paths can be surfaced and restored from the UI.

- Added live restore behavior so restored candidates can return to the detected list without waiting for a full manual rescan.

Scan And Backend Fixes

- Hardened scan execution against Docker client includes failures, Docker warnings, object-shaped volume metadata, malformed templates, missing Docker config text, invalid UTF-8 path data, reverse-proxied hosts, and per-candidate exceptions.

- Moved Docker template parsing local so the plugin no longer depends on Community Applications helper runtime code.

- Kept exec responses valid JSON even when backend noise or warnings are emitted.

- Added fatal backend error surfacing so real scan failures are diagnosable instead of collapsing into generic HTTP 500 responses.

- Fixed the helper-name collision with globally declared my_parse_ini_* functions in the Unraid PHP runtime.

- Added read-only fallback behavior when snapshot persistence fails so dashboard results can still render.

Quarantine, Restore, And Live Update Behavior

- Changed ignore, quarantine, delete, and restore actions so they update the current results live instead of forcing a full scan refresh after every action.

- Kept restore actions actionable by returning refreshed secure snapshot tokens with restored rows.

- Persisted quarantine size data so the action bar can report tracked size correctly instead of sticking at 0 B.

- Restored detected-folder size measurement and cache write-back so rows stop defaulting to Unknown.

Modal And Popup Stability

- Moved the quarantine manager out of the page body and into a dedicated pop-up workflow.

- Reworked the pop-up host so the quarantine manager stays inside a single SweetAlert instance during refreshes.

- Replaced the invalid modal host paragraph wrapper with a block container to stop duplicate content stacking.

- Hid SweetAlert's stale base body and icon chrome so custom quarantine and audit modal content no longer artifacts behind the real UI.

- Removed duplicate in-body titles and other refresh echo paths that caused repeated modal content.

Dashboard And UX Improvements

- Split the old banner and utility area into safer mode/status presentation plus direct quarantine access.

- Rebuilt the top controls into compact Search, Sort, and Controls panels.

- Moved visible/detected counts and controls into cleaner dedicated panel positions during the top-row redesign.

- Tightened panel, utility card, audit card, and result-row spacing throughout the dashboard.

- Flattened panel backgrounds so the interface uses solid surfaces instead of gradient fades.

- Refined detected-row layout so badges, path chips, metadata, descriptions, and action placement align more cleanly.

- Added color-matched summary stat glow behavior and then limited the glow to nonzero values so empty stats stay quiet.

- Tightened and centered summary tile, row copy, and badge/path alignment across the compact layout.

Safety, Security, And Compatibility

- Kept quarantine as the default real action while preserving typed confirmation for every permanent delete path.

- Enforced same-host POST execution and kept canonical path and target validation around risky operations.

- Scoped action snapshots to the active session and kept cached path stats for safer repeat actions.

- Removed the unused XML helper and dropped the old CA helper dependency from the runtime path.

- Split the backend into dedicated dashboard, API, HTTP, quarantine, and path utility modules for easier maintenance.

- Added local behavior smoke coverage around scan regressions, including Docker client load-failure handling.

How do I figure out why these are blocked?

image.png

And there are also other, no longer used, appdata folders present that aren't even detected.

Edited by shiftylilbastrd

  • Author
1 hour ago, shiftylilbastrd said:

How do I figure out why these are blocked?

image.png

And there are also other, no longer used, appdata folders present that aren't even detected.

What version of the plugin and Unraid are you running?

A very well-designed plugin - keep up the good work. 👍🏻

  • Author
Appdata Cleanup Plus - Version: 2026.03.31.12- Feature / Fix / UI / UX Release

Since the last main release (2026.03.30.48), this stable build promotes the full 2026.03.31.01 through 2026.03.31.11 development cycle to main.

Scan and Detection

- Added direct filesystem discovery for orphaned child folders inside the configured appdata share, even when no saved Docker template still references them.

- Locked symlink candidates now show the exact offending symlink path segment instead of a generic safety warning. @shiftylilbastrd

- Host path matching is now canonicalized before comparing saved templates against live container mounts, so trailing slash differences no longer create false orphan rows.

- Added regression coverage for saved-template vs live-mount trailing slash mismatches.

Results UI / UX

- A single scan is now split into grouped sections for Saved template references, Appdata share discovery, and Ignored paths.

- Filtering, sorting, and selection remain global across the page while sorting is applied within each visible section.

Bulk Actions

- Added Select all to the main bottom action bar so every deletable result can be selected in one click.

- Added quarantine entry checkboxes with bulk Restore selected and Purge selected actions.

- Added Select all to the quarantine manager toolbar for bulk restore and purge workflows.

Quarantine Workflow Fixes

- Fixed the restore/purge flow so the quarantine manager no longer gets stuck until a full page refresh.

- Changed the success flow so the quarantine manager no longer reopens again after a successful restore or purge.

- Restored normal page scrolling after quarantine restore/purge modal flows close.

- Cleared modal-specific SweetAlert classes more reliably when moving between quarantine, history, and other dialogs.

Quarantine Manager UI / Modal Improvements

- Increased the quarantine manager review height so more tracked items stay visible.

- Tuned the quarantine manager width to use more horizontal viewport space without keeping the oversized early layout.

- Reduced side padding so quarantined path cards have more usable room for long paths.

- Corrected alignment so quarantine entry names line up properly with their checkboxes and actions.

- Replaced fragile modal sizing with explicit width and max-width handling so wider layouts actually apply consistently.

- Restored proper centered positioning for wide and tall dialogs.

- Reset modal margin handling and used full centering transforms so confirmation dialogs no longer open cut off near the bottom of the screen.

Safety / Settings

- Permanent delete and outside-share cleanup safety toggles can now be saved even when the current scan is empty.

Edited by XCrownedClownsX

3 hours ago, XCrownedClownsX said:

What version of the plugin and Unraid are you running?

Was on 2026.03.30.48 and 7.2.4
Just updated to 2026.03.31.18 all the ones that were missing before are now showing but still can't remove

image.png

Edited by shiftylilbastrd

  • Author
20 minutes ago, shiftylilbastrd said:

2026.03.30.48 and 7.2.4

Please test the latest version 2026.03.31.18 to see if your issue is resolved.

3 minutes ago, XCrownedClownsX said:

Please test the latest version 2026.03.31.18 to see if your issue is resolved.

I did if you look at the rest of the post. The reason it says they're locked is because my Appdata share is symlinked to the disk named docker-ssd, of course it is, that the disk the share is on.

  • Author

@shiftylilbastrd I didn't see the updated edit when I commented. I will review this issue and provide a fix.

  • Author
48 minutes ago, shiftylilbastrd said:

Was on 2026.03.30.48 and 7.2.4
Just updated to 2026.03.31.18 all the ones that were missing before are now showing but still can't remove

image.png

This should be fixed in the latest stable release: 2026.04.01.02.

Two changes were made for this case:

- The plugin now allows the configured appdata share root itself to be symlinked without hard-locking every folder under it.

- .Recycle.Bin is now excluded from direct-child appdata discovery, so it should no longer show up as an orphaned appdata folder.

Important detail:

- This only relaxes the lock for the configured appdata root symlink itself.

- Direct folder symlinks and deeper nested symlink segments are still locked for safety.

Can you update to 2026.04.01.02 and test again to confirm:

- normal appdata folders under your symlinked appdata root are no longer all stuck as Locked

- .Recycle.Bin no longer appears in the scan

Release:

https://github.com/alexphillips-dev/Appdata-Cleanup-Plus/releases/tag/v2026.04.01.02

That addressed the issue but I have two comments.

  1. The done button at the bottom in my opinion is misplaced, I tried clicking that after selecting what I wanted cleaned just to be booted to the Settings page then have to go back in and try again. I get having the ability to exit the plugin but I think it should either be labeled Exit or moved elsewhere.

  2. There should be a settable duration that items are held in quarantine if that's going to be the default.

  • Author
5 minutes ago, shiftylilbastrd said:

That addressed the issue but I have two comments.

  1. The done button at the bottom in my opinion is misplaced, I tried clicking that after selecting what I wanted cleaned just to be booted to the Settings page then have to go back in and try again. I get having the ability to exit the plugin but I think it should either be labeled Exit or moved elsewhere.

  2. There should be a settable duration that items are held in quarantine if that's going to be the default.

All good suggestions, I'll work on those as well. I should have a release for this tomorrow.

  • Author
10 hours ago, shiftylilbastrd said:

That addressed the issue but I have two comments.

  1. The done button at the bottom in my opinion is misplaced, I tried clicking that after selecting what I wanted cleaned just to be booted to the Settings page then have to go back in and try again. I get having the ability to exit the plugin but I think it should either be labeled Exit or moved elsewhere.

  2. There should be a settable duration that items are held in quarantine if that's going to be the default.

This should be addressed in the latest stable release: 2026.04.01.09.

Two changes went in for this:

- The bottom Done button was removed from the action bar entirely, so it should no longer kick you back to the Settings page by mistake while working through a cleanup.

- The quarantine manager now supports purge scheduling for quarantined items:

- select one or more quarantined entries

- set Purge in days

- clear the timer later if needed

- each scheduled item shows a visible purge badge and the scheduled purge time

Important detail:

- The current implementation is per selected quarantine entry, not a single global default retention setting.

- Due scheduled purges are cleaned up automatically the next time the quarantine state is loaded.

Can you update to 2026.04.01.09 and test again to confirm:

- the bottom action bar no longer has the old Done button

- quarantine items can be scheduled for purge successfully

- the scheduled purge badge/timestamp show correctly in the quarantine manager

Release: https://github.com/alexphillips-dev/Appdata-Cleanup-Plus/releases/tag/v2026.04.01.09

Running 2026.04.01.09 and those changes are good. I have a couple more if you're interested

Remove this

image.png

If you want to continue to include the mode notification just put it at the top right above the Controls block since that space is empty anyways.
Have quarantined items in a separate visible table like ignored items are and show their scheduled deletion timestamp, Place the history button at the bottom of that block

Clicking done doesn't save the change to purge days, have to hit enter of click out of box before hitting done to save.
Quarantine shows time added but not scheduled deletion time.

  • Author

@shiftylilbastrd It shows you the time added in a badge and the scheduled purge below.

image.png

Also, you have to have an item selected for those buttons to be enabled.

image.png

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.