Skip to content

Repository files navigation

dcmm-desktop

Native DeepCleanMyMac macOS app. The UI is AppKit (Objective-C++). All scanning, hashing, safety checks, and trashing go through dcmmlib as a Git submodule — no engine logic lives here.

Layout

dcmm-desktop/
  include/           App headers (AppDelegate, Modules, ui/)
  src/               AppKit implementations
  extras/dcmmlib/    git submodule (engine)
  tests/             GoogleTest (engine link + module titles)

If the submodule is missing, CMake will also accept a sibling ../dcmmlib checkout.

Build (LLVM + Clang + Ninja)

make init                 # first time: extras/dcmmlib submodule
make                      # debug (default)
make build release
make test
make run                  # open DeepCleanMyMac.app
make clean

make help lists presets (debug / release / all), relaunch, and test release.

Equivalent with CMake presets:

git submodule update --init extras/dcmmlib
cmake --preset release
cmake --build --preset release
ctest --preset release
open build/release/DeepCleanMyMac.app

Debug: --preset debug (output in build/debug).

Equivalent without presets:

cmake -S . -B build -G Ninja \
  -DCMAKE_TOOLCHAIN_FILE=cmake/llvm-clang.cmake \
  -DCMAKE_BUILD_TYPE=Release
cmake --build build
ctest --test-dir build --output-on-failure
open build/DeepCleanMyMac.app

What the app does

  • Smart Scan — recommended groups only (~/Library/Caches, logs, saved state)
  • System Junk — every cache and leftover, item by item (npm, Cargo, Xcode, Darwin tmp, …)
  • Large files and SHA-256 duplicates
  • App uninstaller + leftover files
  • Privacy (browser caches)
  • Space Lens (home-folder usage)
  • Maintenance (empty Trash, flush DNS, rebuild Launch Services)

Selected items are moved to Trash by dcmmlib. Protected paths are rejected by the engine.

About

DeepCleanMyMac is a free, open-source Mac native software to clean your Mac since your SSD is not immortal

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages