Pedro Piñera bio photo

Pedro Piñera

Mobile Engineer at SoundCloud and Open-Source ♥

SpeakerDeck Medium Email Twitter Facebook Google+ Github Stackoverflow


I have been recently working on SugarRecord 2.0 and one of the things I tried to do for that version was making it easier for contributors to clone the project and start contributing with it. I realized a few months ago that Carthage and ReactiveCocoa had a folder called script with a set of normalized scripts. I cloned these projects, executed the script bootstrap there and I had the project ready to contribute with. Wow! that’s awesome.

The idea was great, I copied these scripts cloning them from this repository from @jspahrsummers. He got implemented a set of very reusable scripts for any Xcode project. I’ve been using them since then. Why?:

  • Developers don’t need installing dependencies like Fastlane, Bundle Gems, … Scripts are implemented using bash.
  • Setup task turns into just one line of code in your console.
  • You can build all your project shared schemes and use that build script for CI.

If you’re working on Xcode projects, no matter if they’re a company project, an open source library, whatever.. Add them in your project and leave a comment in the explaining how to use them (very straightforward).

Where does the idea of normalized scripts come from?

This idea comes originally from Github. It was a few weeks ago when googling, I found this blog post from the GitHub engineering team. They realized that thereis a set of repetitive tasks on any project that could be normalized in scripts. The decided to stanrdize these scripts and call it Scripts to Rule Them All. What a brilliant idea.

Thanks GitHub for the idea and @jspahrsummers for creating the equivalent version for Xcode projects.