Skip to content

AkshayKrGupta/TwinPixCleaner

Repository files navigation

TwinPixCleaner

TwinPixCleaner Logo

Smart Duplicate Photo Finder for macOS
Find and remove duplicate images to free up disk space

macOS 13.0+ Swift 6.0 Version 1.0.0


✨ Features

  • 🔍 Dual Scanning Modes - Choose between pure SHA-256 hashing or AI-powered Visual Similarity
  • 🎯 100% Accurate - Finds exact duplicates safely, or visually identical variations
  • 🛡️ Smart Selection - 1-click "Keep This" workflow to select all duplicates except your favorite
  • 🗑️ Safe Deletion & Undo - Files moved to Trash, reversible instantly with ⌘Z Undo
  • Multi-Select - Select multiple images for batch deletion
  • 👁️ Native Quick Look - Press Spacebar for instant, full-resolution interactive previews
  • 📊 Smart Sorting - Sort by size or number of copies
  • 🧊 Frost Glass UI - Stunning, interactive native macOS interface with dark mode support
  • ⌨️ Keyboard Shortcuts - ⌘N for new scan, Delete to remove files, ⌘Z to undo
  • 🔒 Privacy First - All processing happens locally, no data leaves your Mac

📥 Installation

Option 1: Download Release (Recommended)

  1. Download the latest release from Releases
  2. Open the DMG file
  3. Drag TwinPixCleaner to your Applications folder
  4. Launch from Applications

Option 2: Build from Source

# Clone the repository
git clone https://github.com/AkshayKrGupta/TwinPixCleaner.git
cd TwinPixCleaner

# Build release version
swift build -c release

# Run the app
./.build/release/TwinPixCleaner

🚀 Quick Start

  1. Launch TwinPixCleaner
  2. Select a folder to scan (or drag & drop)
  3. Review duplicates - sorted by size by default
  4. Select files to delete (click to select, ⌘-click for multiple)
  5. Delete - Press Delete key or click "Delete Selected"
  6. Done! - Files are safely moved to Trash

📖 User Guide

Scanning for Duplicates

Method 1: Button

  • Click "Select Folder to Scan"
  • Choose any folder on your Mac
  • Wait for scan to complete

Method 2: Drag & Drop

  • Drag any folder onto the app window
  • Scan starts automatically

Method 3: Keyboard Shortcut

  • Press ⌘N to start a new scan

Understanding Results

The results view shows:

  • Duplicate Groups: Sets of identical images
  • File Size: Size of each duplicate file
  • Copies: Number of duplicates found
  • Potential Savings: Space you can free up

Sorting Options

Use the sort dropdown to prioritize:

  • Largest First (default) - Free up space quickly
  • Smallest First - Start with small files
  • Most Copies - Files with most duplicates
  • Fewest Copies - Files with fewer duplicates

Selecting Files

  • Single Click: Select/deselect one file
  • "Keep This" Button: Instantly keeps the chosen photo and flags all identical siblings for deletion
  • Delete Key: Delete all selected files
  • Spacebar / Eye Icon: Open native Quick Look preview
  • Hover: View file details (name, path, metadata, size)

Safe Deletion & Undo

  • All deleted files go to macOS Trash
  • Undo Mistakes: Simply press ⌘Z to instantly restore files deleted in your current session
  • You can recover files from Trash before emptying
  • No permanent deletion without your confirmation

🔒 Privacy & Permissions

Required Permissions

File Access

  • TwinPixCleaner needs permission to read folders you select
  • Granted automatically when you choose a folder

Full Disk Access (Optional)

  • Required for system folders and external drives
  • Enable in: System Settings → Privacy & Security → Full Disk Access
  • Add TwinPixCleaner to the list

Privacy Guarantee

100% Local Processing - No cloud, no servers
No Data Collection - We don't track anything
No Internet Required - Works completely offline
Open Source - Verify the code yourself

Read our full Privacy Policy

⌨️ Keyboard Shortcuts

Shortcut Action
⌘N New Scan
Spacebar Toggle Quick Look Preview
Delete/Backspace Delete Selected Files
⌘Z Undo Last Deletion
⌘W Close Window
⌘Q Quit App

🛠️ Technical Details

  • Language: Swift 6.0
  • UI Framework: SwiftUI
  • Minimum macOS: 13.0 (Ventura)
  • Architecture: Apple Silicon & Intel
  • Duplicate Detection: SHA-256 (CryptoKit) & Feature Prints (Vision ML)
  • File Operations: Native FileManager APIs with UndoManager integration

📊 Performance

  • Scans 1,000+ images in seconds
  • Handles large libraries (10,000+ files)
  • Low memory footprint
  • Optimized for Apple Silicon

🤝 Contributing

Contributions are welcome! Please:

  1. Fork the repository
  2. Create a feature branch
  3. Make your changes
  4. Submit a pull request

📄 License

This project is licensed under the MIT License - see LICENSE file for details.

👨‍💻 Developer

Akshay K Gupta
LinkedIn

🐛 Support

Found a bug or have a feature request?

⭐ Show Your Support

If you find TwinPixCleaner useful, please:

  • ⭐ Star this repository
  • 📢 Share with friends
  • 💬 Leave feedback

Made with ❤️ for macOS