Skip to content

A simple dependency manager for Xcode projects written in Objective-C

Notifications You must be signed in to change notification settings

iljaiwas/CocoaButter

Repository files navigation

CocoaButter is aimed to become a dependency manager for Xcode projects written in Objective-C. It is heavily inspired by the CocoaSeeds project.

#Motivation

  • I'm not a ruby programmer, nor do I want to become one just for the sake of fixing my build system.
  • I want to reduce the number of dependencies and complexity of my project's build chain (ruby, gem, pod specs, additional workspaces or frameworks, build phases, etc.).
  • I'm aware that such a simple system doesn't fit everyone's needs. If you have more complex needs, please look here or here here.

#Project status

This project needs help, it hasn't even reached proof-of-concept stage. I spent my self-imposed time budget on this project and need to start working on other tasks. Main blocker is this issue #1.

  • parse simple JSON file
  • download sources files from GitHub
  • integrate sources into Xcode project file
  • get target project to compile after integration

#Concept

You create an JSON file listing your GitHub dependencies in the directory containing your .xcodeproj file. This file could look like this:

[
    {
        "repo" : "swisspol/GCDWebServer", 
        "revision" : "3.2.7", "includeFilter" : "GCDWebServer/*/*.{h,m}"
    },
    {
        "repo" : "appsquickly/Typhoon",
        "revision" : "3.3.3",
        "includeFilter": "{Source/{Configuration,Definition,Factory,TypeConversion,ios}/**/*.{h,m},Source/{Configuration,Definition,Factory,TypeConversion,ios}/*.{h,m}}"
   }
]

Run the CocoaButtercommand and it will download the specified source files and put references to them right in your Xcode project file.

#Requirements

Right now the project uses CocoaSeeds to source files from the XcodeEditor. The goal is of course to become self-hosted at some point.

About

A simple dependency manager for Xcode projects written in Objective-C

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published