diff --git a/README.md b/README.md index 4473d25..e453011 100644 --- a/README.md +++ b/README.md @@ -33,7 +33,46 @@ MyMacCleaner is a free, open-source alternative to commercial Mac cleaning apps ## Screenshots -*Coming soon* +### Home & Smart Scan +

+ Home Screen + Smart Scan Results +

+ +### Disk Cleaner & Space Lens +

+ Disk Cleaner + Space Lens +

+ +### Performance & System Health +

+ Performance + System Health +

+ +### Applications & Port Management +

+ Applications + Port Management +

+ +### Duplicates & Orphaned Files +

+ Duplicates + Orphaned Files +

+ +### Startup Items & Permissions +

+ Startup Items + Permissions +

+ +### Menu Bar Monitor +

+ Menu Bar +

## Requirements @@ -104,13 +143,17 @@ See [Permissions Guide](docs/permissions.md) for detailed information. - [Menu Bar Monitor](docs/menu-bar.md) - [Permissions Guide](docs/permissions.md) +## Automatic Updates + +MyMacCleaner includes built-in automatic update checking powered by the Sparkle framework. The app periodically checks for new versions in the background, and when an update is available, a notification button appears next to the language switcher in the app toolbar. This provides a seamless update experience - simply click the button to download and install the latest version without leaving the app. + ## Tech Stack - **Language**: Swift 5.9+ - **UI Framework**: SwiftUI - **Design**: Apple Liquid Glass (macOS Tahoe style) - **Concurrency**: Swift async/await, TaskGroups -- **Updates**: Sparkle Framework +- **Updates**: Sparkle Framework (automatic background checks with in-app notification) ## Attribution diff --git a/docs/applications.md b/docs/applications.md index 2bc6199..9f379dc 100644 --- a/docs/applications.md +++ b/docs/applications.md @@ -2,6 +2,9 @@ Complete application management: uninstall apps properly and check for updates. +![Applications - Before Analysis](/MyMacCleaner/screenshots/applications/applications_base.png) +*Applications Manager ready to analyze your installed apps* + ## Overview The Applications Manager helps you: @@ -12,6 +15,9 @@ The Applications Manager helps you: ## Application List +![Applications - Full List](/MyMacCleaner/screenshots/applications/applications_full.png) +*Grid view showing all installed applications with size and update status* + ### Views - **Grid View** - Visual display with app icons @@ -85,6 +91,10 @@ MyMacCleaner scans for all related files before uninstalling. ## Update Checker +### Automatic Update Notifications + +MyMacCleaner itself automatically checks for updates in the background using the Sparkle framework. When a new version is available, an update notification button appears next to the language switcher in the app toolbar. This seamless experience lets you update the app without interrupting your workflow - simply click the button to download and install the latest version. + ### Supported Update Sources | Source | Detection Method | diff --git a/docs/disk-cleaner.md b/docs/disk-cleaner.md index 8f37f62..2db9e98 100644 --- a/docs/disk-cleaner.md +++ b/docs/disk-cleaner.md @@ -2,10 +2,16 @@ Deep cleaning functionality to remove junk files and free up disk space. +![Disk Cleaner - Before Scan](/MyMacCleaner/screenshots/disk_cleaner/disk_cleaner_base.png) +*Disk Cleaner ready to scan for junk files* + ## Overview Disk Cleaner provides granular control over what gets cleaned, with detailed categories and safe deletion practices. +![Disk Cleaner - Scan Results](/MyMacCleaner/screenshots/disk_cleaner/disk_cleaner_full.png) +*Detailed scan results showing all cleanable categories* + ## Categories ### System Junk @@ -59,6 +65,9 @@ Web browser caches and data. The Browser Privacy tab provides deep cleaning of browser data for enhanced privacy. +![Browser Privacy](/MyMacCleaner/screenshots/disk_cleaner/privacy.png) +*Browser Privacy tab for deep cleaning browser data* + ### Supported Browsers | Browser | Supported | diff --git a/docs/duplicates.md b/docs/duplicates.md index d8f6df9..1b2624f 100644 --- a/docs/duplicates.md +++ b/docs/duplicates.md @@ -2,10 +2,16 @@ Find and remove duplicate files to reclaim wasted disk space. +![Duplicates - Before Scan](/MyMacCleaner/screenshots/duplicates/duplicates_base.png) +*Duplicate Finder ready to scan for duplicate files* + ## Overview The Duplicate Finder scans your folders for exact duplicate files using SHA256 hashing. It identifies files with identical content regardless of their names or locations, helping you safely remove redundant copies. +![Duplicates - Results](/MyMacCleaner/screenshots/duplicates/duplicates_full.png) +*Scan results showing duplicate file groups with statistics* + ## How It Works The scanner uses a multi-stage process optimized for speed and accuracy: diff --git a/docs/home.md b/docs/home.md index a317eb1..ea31a73 100644 --- a/docs/home.md +++ b/docs/home.md @@ -2,6 +2,9 @@ The Home screen is your dashboard for quick system overview and one-click cleanup. +![Home Screen - Before Scan](/MyMacCleaner/screenshots/home/home_base.png) +*Home screen with Smart Scan ready to analyze your system* + ## Overview When you open MyMacCleaner, the Home screen provides: @@ -49,6 +52,9 @@ After scanning, you'll see: - Individual items you can select/deselect - Safety indicators for each item +![Home Screen - After Scan](/MyMacCleaner/screenshots/home/home_full.png) +*Scan results showing cleanable categories and total space to recover* + ## Quick Actions Shortcuts to common tasks: diff --git a/docs/menu-bar.md b/docs/menu-bar.md index 4702734..35e42f5 100644 --- a/docs/menu-bar.md +++ b/docs/menu-bar.md @@ -2,6 +2,9 @@ Monitor your Mac's performance at a glance from the menu bar. +![Menu Bar](/MyMacCleaner/screenshots/menu/menu.png) +*Menu Bar popover showing CPU, Memory, and Disk stats with quick actions* + ## Overview The Menu Bar Monitor provides real-time CPU and RAM monitoring directly in your menu bar. Click to see detailed stats and quick actions without opening the full app. diff --git a/docs/orphaned-files.md b/docs/orphaned-files.md index a574165..a2220f4 100644 --- a/docs/orphaned-files.md +++ b/docs/orphaned-files.md @@ -2,10 +2,16 @@ Detect and remove leftover files from applications that have been uninstalled. +![Orphaned Files - Before Scan](/MyMacCleaner/screenshots/orphaned_files/orphaned_files_base.png) +*Orphaned Files scanner ready to detect leftover files* + ## Overview When you delete an application by dragging it to the Trash, many associated files remain on your system. These "orphaned files" can accumulate over time, taking up valuable disk space. The Orphaned Files scanner identifies these remnants and helps you safely remove them. +![Orphaned Files - Results](/MyMacCleaner/screenshots/orphaned_files/orphaned_files_full.png) +*Scan results showing orphaned files grouped by category* + ## What Are Orphaned Files? Orphaned files are support files that were created by applications but remain after the app is uninstalled. They include: diff --git a/docs/performance.md b/docs/performance.md index b9796c8..b0ccd46 100644 --- a/docs/performance.md +++ b/docs/performance.md @@ -2,6 +2,9 @@ System optimization tools and maintenance tasks. +![Performance](/MyMacCleaner/screenshots/performance/performance.png) +*Performance dashboard showing memory usage, processes, and maintenance options* + ## Overview The Performance section provides tools to optimize your Mac's speed and responsiveness through memory management and system maintenance. diff --git a/docs/permissions.md b/docs/permissions.md index aa9ca17..68edfbd 100644 --- a/docs/permissions.md +++ b/docs/permissions.md @@ -2,6 +2,9 @@ Understanding and managing permissions for MyMacCleaner. +![Permissions](/MyMacCleaner/screenshots/permissions/permissions.png) +*Permissions management page showing folder access status* + ## Overview MyMacCleaner needs certain permissions to access system files and perform cleanup operations. This guide explains what permissions are needed, why, and how to grant them. diff --git a/docs/port-management.md b/docs/port-management.md index 7f19074..229ac5e 100644 --- a/docs/port-management.md +++ b/docs/port-management.md @@ -2,6 +2,9 @@ View and manage processes using network ports. +![Port Management](/MyMacCleaner/screenshots/port_management/port_managment.png) +*Port Management showing active network connections and listening ports* + ## Overview Port Management helps developers and power users see what's running on their Mac's network ports and terminate processes when needed. diff --git a/docs/space-lens.md b/docs/space-lens.md index 6a2ad3c..ad2833d 100644 --- a/docs/space-lens.md +++ b/docs/space-lens.md @@ -2,6 +2,9 @@ Visual disk space analyzer with interactive treemap visualization. +![Space Lens](/MyMacCleaner/screenshots/disk_cleaner/space_lens.png) +*Interactive treemap visualization showing disk usage by folder and file* + ## Overview Space Lens helps you understand where your disk space is going through an intuitive visual representation. Find large files and folders at a glance. diff --git a/docs/startup-items.md b/docs/startup-items.md index 27c9587..9e6b68d 100644 --- a/docs/startup-items.md +++ b/docs/startup-items.md @@ -2,10 +2,16 @@ Manage applications and services that launch automatically when you log in. +![Startup Items - Before Scan](/MyMacCleaner/screenshots/startup_items/startup_items_base.png) +*Startup Items ready to discover login items and launch agents* + ## Overview Startup Items helps you control what runs when your Mac starts, improving boot time and reducing resource usage. +![Startup Items - Full List](/MyMacCleaner/screenshots/startup_items/startup_items_full.png) +*Complete list of startup items with enable/disable controls* + ## Quick Stats The dashboard shows four key metrics: diff --git a/docs/system-health.md b/docs/system-health.md index aee9163..cf28a10 100644 --- a/docs/system-health.md +++ b/docs/system-health.md @@ -2,6 +2,9 @@ Monitor your Mac's overall health with a comprehensive health score and detailed system information. +![System Health](/MyMacCleaner/screenshots/system_health/system_health.png) +*System Health dashboard showing health score gauge and system information* + ## Overview System Health provides an at-a-glance view of your Mac's condition through a health score gauge, individual health checks, and detailed system information. diff --git a/website/public/screenshots/duplicates/duplicates_full.png b/website/public/screenshots/duplicates/duplicates_full.png new file mode 100644 index 0000000..5085f0f Binary files /dev/null and b/website/public/screenshots/duplicates/duplicates_full.png differ diff --git a/website/src/components/Features.astro b/website/src/components/Features.astro index 793c9a8..1bc42b9 100644 --- a/website/src/components/Features.astro +++ b/website/src/components/Features.astro @@ -3,53 +3,100 @@ import GlassCard from './GlassCard.astro'; const features = [ { - title: 'Smart Scan', + title: 'Home & Smart Scan', description: 'One-click comprehensive system scan that finds all cleanable files across multiple categories.', icon: ``, color: 'from-blue-500 to-cyan-500', - href: '/MyMacCleaner/docs/home/' + href: '/MyMacCleaner/docs/home/', + screenshot: '/MyMacCleaner/screenshots/home/home_full.png' }, { title: 'Disk Cleaner', description: 'Remove system junk, caches, logs, and temporary files to free up valuable disk space.', icon: ``, - color: 'from-red-500 to-orange-500', - href: '/MyMacCleaner/docs/disk-cleaner/' + color: 'from-orange-500 to-amber-500', + href: '/MyMacCleaner/docs/disk-cleaner/', + screenshot: '/MyMacCleaner/screenshots/disk_cleaner/disk_cleaner_full.png' }, { title: 'Space Lens', description: 'Visual treemap showing exactly where your storage is being used. Find large files instantly.', icon: ``, color: 'from-purple-500 to-pink-500', - href: '/MyMacCleaner/docs/space-lens/' + href: '/MyMacCleaner/docs/space-lens/', + screenshot: '/MyMacCleaner/screenshots/disk_cleaner/space_lens.png' + }, + { + title: 'Orphaned Files', + description: 'Find and remove leftover files from applications that have been uninstalled.', + icon: ``, + color: 'from-red-500 to-rose-500', + href: '/MyMacCleaner/docs/orphaned-files/', + screenshot: '/MyMacCleaner/screenshots/orphaned_files/orphaned_files_full.png' + }, + { + title: 'Duplicates', + description: 'Find exact duplicate files using SHA256 hashing and safely remove redundant copies.', + icon: ``, + color: 'from-teal-500 to-cyan-500', + href: '/MyMacCleaner/docs/duplicates/', + screenshot: '/MyMacCleaner/screenshots/duplicates/duplicates_full.png' }, { title: 'Performance', description: 'Monitor RAM usage, manage processes, and run maintenance tasks to optimize system performance.', icon: ``, color: 'from-yellow-500 to-orange-500', - href: '/MyMacCleaner/docs/performance/' + href: '/MyMacCleaner/docs/performance/', + screenshot: '/MyMacCleaner/screenshots/performance/performance.png' }, { title: 'Applications', description: 'Manage all your apps, check for updates, clean uninstall with leftover detection, and Homebrew integration.', icon: ``, - color: 'from-green-500 to-emerald-500', - href: '/MyMacCleaner/docs/applications/' + color: 'from-sky-500 to-blue-500', + href: '/MyMacCleaner/docs/applications/', + screenshot: '/MyMacCleaner/screenshots/applications/applications_full.png' + }, + { + title: 'Startup Items', + description: 'Manage login items and launch agents that run when your Mac starts.', + icon: ``, + color: 'from-amber-500 to-yellow-500', + href: '/MyMacCleaner/docs/startup-items/', + screenshot: '/MyMacCleaner/screenshots/startup_items/startup_items_full.png' }, { title: 'Port Management', description: 'See all network connections and ports in use. Kill processes hogging ports with one click.', icon: ``, - color: 'from-indigo-500 to-blue-500', - href: '/MyMacCleaner/docs/port-management/' + color: 'from-indigo-500 to-violet-500', + href: '/MyMacCleaner/docs/port-management/', + screenshot: '/MyMacCleaner/screenshots/port_management/port_managment.png' }, { title: 'System Health', - description: 'Comprehensive health score with disk, memory, battery monitoring and startup items management.', + description: 'Comprehensive health score with disk, memory, and battery monitoring.', icon: ``, - color: 'from-pink-500 to-rose-500', - href: '/MyMacCleaner/docs/system-health/' + color: 'from-lime-500 to-green-500', + href: '/MyMacCleaner/docs/system-health/', + screenshot: '/MyMacCleaner/screenshots/system_health/system_health.png' + }, + { + title: 'Permissions', + description: 'Review and manage folder access permissions with visual status overview.', + icon: ``, + color: 'from-violet-500 to-purple-500', + href: '/MyMacCleaner/docs/permissions/', + screenshot: '/MyMacCleaner/screenshots/permissions/permissions.png' + }, + { + title: 'Menu Bar', + description: 'Real-time CPU, RAM, and disk monitoring directly in your Mac menu bar.', + icon: ``, + color: 'from-slate-500 to-gray-600', + href: '/MyMacCleaner/docs/menu-bar/', + screenshot: '/MyMacCleaner/screenshots/menu/menu.png' }, ]; --- @@ -67,19 +114,33 @@ const features = [ -
+
{features.map((feature, index) => ( - -
- + + {feature.screenshot && ( +
+ {`${feature.title} +
+ )} +
+
+ +
+
+

+ {feature.title} +

+

+ {feature.description} +

+
-

- {feature.title} -

-

- {feature.description} -

))} diff --git a/website/src/components/Hero.astro b/website/src/components/Hero.astro index 490403c..9788d5c 100644 --- a/website/src/components/Hero.astro +++ b/website/src/components/Hero.astro @@ -5,13 +5,7 @@ import releases from '../../public/data/releases.json'; const latestRelease = releases.releases.find(r => r.latest) || releases.releases[0]; --- -
- -
-
-
-
- +
@@ -99,18 +93,15 @@ const latestRelease = releases.releases.find(r => r.latest) || releases.releases
- -
-
-
-
-
- - - -

App screenshot coming soon

-
-
+ +
+
+ MyMacCleaner Home Screen with Smart Scan ready to analyze your system
diff --git a/website/src/pages/docs/index.astro b/website/src/pages/docs/index.astro index 70d0108..4c9ee5f 100644 --- a/website/src/pages/docs/index.astro +++ b/website/src/pages/docs/index.astro @@ -157,6 +157,19 @@ const docs = [
+ + +
+

Automatic Updates

+

+ MyMacCleaner automatically checks for updates in the background. When a new version is available, + an update notification button appears next to the language switcher in the app toolbar. +

+

+ Simply click the button to download and install the latest version without leaving the app. + Updates are powered by the Sparkle framework for a seamless experience. +

+