Mole is a macOS system maintenance CLI tool that provides a unified interface for cleaning caches, uninstalling applications, analyzing disk usage, monitoring system health, and optimizing performance. It combines two Go binaries (cmd/analyze for disk exploration with a Bubble Tea TUI, cmd/status for real-time system metrics) with an extensive shell script library for orchestration and system-level operations. The `mo` command dispatches to subcommands like `clean`, `uninstall`, `analyze`, `status`, `optimize`, `purge`, and `installer`. The architecture is hybrid: Go handles performance-critical tasks (concurrent directory scanning with semaphore-based concurrency, hardlink deduplication, gob-based caching, and interactive TUI rendering) while Bash scripts manage cleanup logic, safety guards (path identity snapshots, whitelists, process guards), Homebrew integration, and sudo session management. Key data flows include disk scanning with progress events and cache invalidation, system metrics collection via gopsutil and macOS commands (system_profiler, ioreg, pmset), and cleanup operations with dry-run previews and bounded timeouts. External dependencies include Homebrew (for cask detection and uninstall), macOS system commands (tmutil, plutil, diskutil, osascript), and Go modules (charmbracelet/bubbletea, lipgloss, gopsutil). The codebase emphasizes safety with fail-closed policies, identity re-verification before deletion, and extensive timeout handling. It supports both interactive TUI and non-interactive JSON output for scripting.
Czkawka is a multi-tool file cleanup utility written in Rust that finds and removes duplicate files, similar images/videos/music, empty directories, broken files, temporary files, and more. It is structured as a Rust workspace with a shared core library (`czkawka_core`) that implements all scanning algorithms and a common architecture (traits, caching, progress reporting). Three frontends exist: a CLI (`czkawka_cli`), a legacy GTK4 desktop GUI (`czkawka_gui`, in maintenance mode), and a modern Slint-based desktop GUI (`krokiet`) which is the primary focus. An additional Slint-based Android app (`cedinia`) also reuses the core. The codebase demonstrates strong software engineering practices: modular design, extensive use of traits, parallel directory traversal with a builder pattern, generic caching, and comprehensive localization via Fluent. Despite some duplication between frontends and the deprecated GTK GUI, the core library is well-crafted and reusable.
The Winapp2ool repository is a VB.NET-based console application designed to manage and customize the winapp2.ini database of cleaning rules for tools like CCleaner, BleachBit, and System Ninja. It provides a modular suite of tools for downloading, trimming, debugging, and transforming the INI file, allowing users to tailor the cleaning rules to their specific system and preferences. The application features a consistent menu-driven interface across its modules and supports command-line operation for automation. At its core, the repository maintains a comprehensive set of application-specific cleaning rules (organized in the Assembler/Entries directory) that can be assembled into a final winapp2.ini file. The tool includes specialized modules for tasks such as generating browser-specific entries (BrowserBuilder), removing irrelevant entries based on system compatibility (Trim), and validating the INI file syntax (WinappDebug). The architecture emphasizes separation of concerns, with each module handling a distinct function while sharing common utilities for logging, INI file parsing, settings management, and user interface. The codebase demonstrates strong engineering practices through its reusable components, including a robust INI file parser, a flexible console menu system, and a centralized logging mechanism. These components are designed with low coupling and high cohesion, making them suitable for extraction and reuse in other projects. The project is actively maintained, targets the .NET Framework 4.6.1, and shows minimal technical debt, ensuring compatibility with modern Windows systems while maintaining access to a vast, community-driven database of Windows cleaning rules.
MemReduct is a Windows desktop application for real-time memory monitoring and cleaning, implemented in C with the Win32 API and the undocumented Native API. It operates as a system tray utility that can manually or automatically purge various Windows memory caches: working sets, standby list, modified page list, system file cache, registry cache (Win8.1+), and combined memory lists (Win10+). The core cleaning logic uses NtSetSystemInformation with specific information classes, supplemented by volume cache flushing via the MOUNTMGR device. The application requires administrator privileges for full functionality and provides a configuration GUI with settings for auto-clean thresholds, intervals, hotkeys, language selection, and tray icon appearance. The architecture is monolithic: a single executable built from source files (main.c, main.h, resource files) that links against a reusable utility library (the 'routine' submodule). This library abstracts common Win32 tasks such as registry/INI config management, localization via .ini files, custom listview controls, theme handling, and device context operations. The application entry point is wWinMain in main.c, which creates the main dialog and processes window messages via DlgProc. Memory status is polled every second via a timer callback, and cleaning actions are triggered either manually through the UI or automatically based on user-defined thresholds. External dependencies are limited to Windows system DLLs (kernel32, user32, ntdll, advapi32) and the two submodules: 'routine' (utility code) and 'builder' (installer packaging). The build system uses Visual Studio 2017 project files with batch scripts for x86, x64, and ARM64 targets. No network dependencies exist except an optional update check. The codebase demonstrates non-obvious skill in low-level Windows system programming, custom GDI tray icon rendering, and conditional feature compilation, but remains maintainable through its separation of concerns in the routine library.
WxCleaner is a lightweight desktop application for detecting and removing duplicate files, primarily targeting WeChat file folders. It presents a ttkbootstrap-based GUI where users select a directory, scan for duplicates using a three-stage hashing strategy (file size, partial SHA-256, full SHA-256), and then selectively delete files by moving them to the system recycle bin via send2trash. The architecture cleanly separates the scanning logic (scanner.py) from the GUI (wx_gui.py), with main.py as the entry point. The application is functional, well-structured for its scope, and demonstrates practical file system operations with progress feedback. It is not a data research project; it is a pure utility application.