// the find
mxcl/Cake
A delicious, quality‑of‑life supplement for your app‑development toolbox.
Cake is a macOS menu bar app that auto-generates Xcode module targets from your directory structure, making it trivial to split a monolithic app into internal Swift modules. It also handles SwiftPM dependency integration for iOS/macOS projects, which wasn't straightforward before SPM had Xcode support. For solo iOS/macOS developers frustrated with the tedium of multi-target Xcode projects, this was genuinely useful circa 2019.
The directory-as-module-hierarchy idea is clever — nesting a folder inside another folder declares the dependency, no manifest editing required. Static linking by default means no dylib launch-time overhead, which is the right call for app modules. The 'fresh clone builds with vanilla Xcode, no Cake required' constraint shows real discipline about not creating a hard tool dependency. Git-tag-derived version numbers (`$(SEMANTIC_PROJECT_VERSION)`) is a nice touch that avoids keeping a version string in sync manually.
The README itself opens with a warning not to adopt it ('probably don't commit to Cake at this time') because Xcode 11 broke it — that's a project in hospice, not active development, and last push was 2019. Xcode's own module and SPM support has since caught up significantly, making the core value proposition largely obsolete by 2021. The menu bar app model means you're taking on a persistent process and filesystem watcher to do something that could be a build phase script. Only supports SwiftPM deps, no CocoaPods or Carthage for the cake modules themselves, which was a real limitation when most iOS libraries were still on CocoaPods.