alienator88 / Pearcleaner

A free, source-available and fair-code licensed mac app cleaner
https://itsalin.com/appInfo/?id=pearcleaner
Other
3.49k stars 83 forks source link

[FR] Add Automated Cache Cleanup for Development Environments on macOS #121

Open izzalDev opened 1 month ago

izzalDev commented 1 month ago

Is your feature request related to a problem? Please describe.

I'm always frustrated when old caches and temporary files take up unnecessary space on my development environment, slowing down my workflow. Manual cache cleanup is tedious, and it's hard to keep track of which caches are safe to delete without causing issues in active projects.

Describe the solution you'd like

I would like an automated tool that scans and cleans up developer-related caches on macOS. This tool should be able to identify unnecessary or outdated cache files from common development environments such as Xcode, Gradle, npm, Flutter, and others, providing options for selective cleanup based on the development tool in use.

Describe alternatives you've considered

I’ve considered manually deleting cache files or using general system cleanup tools, but they often miss development-specific files or delete crucial ones by mistake. Another option is using individual commands for each tool (e.g., flutter clean, gradle clean), but this lacks centralization and convenience.

Additional context

It would be helpful to have a user-friendly interface or command-line option to specify which development environments to clean up (e.g., Flutter, npm, etc.). Additionally, an optional preview mode that shows the size of caches to be deleted before proceeding would add more control for the developer.

alienator88 commented 1 month ago

This could fit in with another feature I'm working on. I was going to have a cleaner for Xcode, but could expand on that for other IDEs and languages. I would just need to know what folders each needs to clean since I'm not super familiar with the others.

alienator88 commented 1 month ago

Are you familiar with what folders/files need to be deleted for the example tools you mentioned?

izzalDev commented 1 month ago

Yes, I can help with that! Here are some common cache/temporary directories for the tools I mentioned:

Alternatively, you can make your code modular for developer tools, and I can help guide you through the process.

alienator88 commented 1 month ago

This is helpful! I was thinking of adding a new page to the app, maybe call it Development or something like that. Then have a drop down selector where you can choose the dev environment type, say Flutter and list the cache/file directories for that specific environment to clean.

If you have any ideas on what might work better, I'm open to hearing anything you have.

alienator88 commented 3 days ago

Quick update, got a skeleton version of this development cleaner implemented. Let me know what you think and if you have any other ideas. Screenshot 2024-11-15 at 12 59 58 PM Screenshot 2024-11-15 at 12 57 45 PM

eugenesvk commented 1 day ago

FYI if you fancy expanding from app uninstaller into a more general cleaner app there is another unmaintaned swift project that does that where you could maybe get info on some of the other caches https://github.com/Kevin-De-Koninck/Clean-Me

alienator88 commented 1 day ago

Thanks @eugenesvk! I'll look into it, but just fyi, I kind of wanted to keep the feature set more minimal. I don't want it to end up like one of those bloated apps that tries to do everything 😂

alienator88 commented 22 hours ago

I'm releasing this as a beta feature in the next release for everyone to play around with and find bugs or offer more ideas.