A simple package manager for Cocoa.
The goal of Carthage is straightforward: to resolve complex dependency graphs in the simplest way possible, without supplanting or duplicating the existing Cocoa toolchain.
The package management process looks like this:
- Your project specifies its dependencies, and which versions it will accept
- Those dependencies specify their own dependencies in the same way
- Carthage picks one version of each dependency (no matter how nested), and builds a framework from it
- All of the frameworks are linked together at the application level
All along the way, Carthage will use the normal Xcode tooling for building and linking. At no point will it modify your project files or overwrite your build settings.
Carthage is released under the MIT License.