This tool is for educational purposes, focusing on safely removing development-related junk files (Xcode, Flutter, Visual Studio, npm, etc.) to free up disk space.
- One-Click Cleanup: Clear Xcode, Flutter, Visual Studio, Gradle, npm, NuGet, IDE, and browser caches.
- Comprehensive Flutter Cleanup: Recursively finds and cleans all Flutter projects, removing:
- FVM SDK caches and configurations (
.fvm,.fvmrc) - Flutter build artifacts (
build,.dart_tool,.packages,pubspec.lock) - Android Gradle caches (
android/.gradle,android/build,android/app/build) - iOS CocoaPods caches (
ios/Pods,ios/Podfile.lock,ios/.symlinks, Flutter frameworks) - Global Flutter cache
- FVM SDK caches and configurations (
- Interactive Menu: Allows selection of specific cleanup targets (e.g., Xcode only).
- Multi-platform Support: Supports macOS, Linux, and Windows.
| Operating System | Architecture | Supported |
|---|---|---|
| macOS | Intel, Apple Silicon | ✅ |
| Linux | x64, ARM64 | ✅ |
| Windows | x64, ARM64 | ✅ |
Linux/macOS
To download, grant permission, and run the utility in one line:
curl -fsSL https://raw.githubusercontent.com/jemishavasoya/dev-cleaner/main/dev-cleaner.sh -o dev-cleanup.sh && chmod +x dev-cleanup.sh && ./dev-cleanup.shmacOS/Linux
For a permanent installation using Homebrew:
# Tap the repository
brew tap jemishavasoya/dev-cleaner
# Install dev-cleaner
brew install dev-cleaner
# Run the utility
dev-cleaner
# Check version
dev-cleaner --versionTo update to the latest version:
brew update
brew upgrade dev-cleanerTo uninstall:
brew uninstall dev-cleaner
brew untap jemishavasoya/dev-cleanerPowerShell (Run as Administrator)
irm https://raw.githubusercontent.com/jemishavasoya/dev-cleaner/main/dev-cleaner.ps1 -OutFile dev-cleaner.ps1; .\dev-cleaner.ps1Note: You may need to set the execution policy first:
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
- Download
dev-cleaner.ps1from this repository - Right-click the file → Run with PowerShell, or
- Open PowerShell as Administrator and run:
.\dev-cleaner.ps1
# Show help
.\dev-cleaner.ps1 -Help
# Show version
.\dev-cleaner.ps1 -Version
# Custom Flutter projects directory
.\dev-cleaner.ps1 -FlutterDir "C:\Projects\Flutter"
# Custom Visual Studio projects directory
.\dev-cleaner.ps1 -VsDir "C:\Projects\DotNet"
# Both custom directories
.\dev-cleaner.ps1 -FlutterDir "D:\Flutter" -VsDir "D:\VisualStudio"# Set in your PowerShell profile for persistence
$env:FLUTTER_SEARCH_DIR = "C:\Projects\Flutter"
$env:VS_SEARCH_DIR = "C:\Projects\DotNet"The Windows version includes all cross-platform cleanups plus:
- Visual Studio: Cleans
bin/,obj/,.vs/folders from all .NET projects, plus global VS caches (ComponentModelCache, MEFCacheData) - NuGet: Clears global packages cache (
~/.nuget/packages), HTTP cache, and temp files - Windows Temp: Clears user and system temp folders, plus Recycle Bin
Note: Some operations require Administrator privileges. The script will automatically request elevation if needed.
The Flutter cleanup option (Option 4) performs a comprehensive recursive cleanup of all Flutter projects starting from the current directory. It:
- Recursively searches for all
pubspec.yamlfiles - Removes FVM SDK caches and configurations
- Cleans build artifacts:
build/,.dart_tool/,.packages,pubspec.lock - Removes Android Gradle caches from each project
- Removes iOS CocoaPods caches and Flutter frameworks
- Cleans global Flutter cache
💡 Pro Tip: If you have active projects you work on daily, consider running the cleanup from a specific subdirectory (e.g., ~/old_projects or ~/research) rather than your entire development folder. This avoids unnecessary rebuilds of dependencies for active projects.
Expected Space Savings: Users have reported freeing up 50-100GB+ of disk space after running Flutter cleanup on multiple projects.
We welcome you to submit Issues and Pull Requests!
- If you encounter permission errors while running scripts, try running with
sudo(Linux/macOS) or as Administrator (Windows).
- Make sure tools like
flutterorbreware installed and added to your system PATH. - On macOS/Linux, check PATH with
echo $PATH. - On Windows, check Environment Variables in System Settings.

