7 Awesome Pods For Your iOS Projects

Alexis Creuzot
4 min readApr 30, 2015

In case you never heard of it, CocoaPods is a dependency manager for Swift and Objective-C Cocoa projects. It has thousands of libraries that can be added in a glimpse to your project.
In this article, I present you some of the best libraries CocoaPods has to offer and that I frankly can’t live without.

pod ‘ObjectiveSugar’

ObjectiveSugar brings a set of functional additions for Foundation you wish you’d had in the first place.

Most of those additions are brought in the forms of Categories that extend existing classes of the Foundation framework. In particular, you’ll find some of the familiar functions that make your life so easier and come out of the box in Ruby.

This Pod will definitely help you write more readable and concise code, especially when your algorithms tend to get a little “spaghetti”.

pod ‘CocoaLumberjack’

If you rely a lot on logging to follow your app behavior, CocoaLumberjack will quickly become your best friend. You can define log levels, send them through the network or even save them locally. And it’s faster than NSLog.

You can also display logs in different colors by using the XcodeColors plugin for Xcode. A must have!

CocoaLumberjack with XcodeColors

pod ‘AFNetworking’

It’s quite likely you have already heard or even used this library, but I couldn’t make this list without including it.

AFNetworking is simply the reference to manage network requests to an API. It is simple, fast and supported by a huge community of developers.

pod ‘Realm’

In my 3 years of development I’ve searched extensively for a satisfying database framework. I tried FMDB, CoreData, MagicalRecord and used iActiveRecord for a while.
Each time I got frustrated. Some are too low-level and need a lot of boilerplate code, some don’t play well with threads and some lack in performances as soon as your queries get a little complicated .

For now Realm seems to have achieved the perfect mix. It allows ultra-clean and readable code (think Active Record pattern) and manage to be very, very fast.

I cannot recommend enough this library if you need to have a client-side database.

pod ‘GPUImage’

If you need to process images or video in your app and don’t want to spend weeks cramming research papers and other complex documentation, this library is made for you !

With an impressive collection of filters and image processing algorithms, you can achieve blurs, blend images, detect edges and much more in just a few lines of codes.

It is also very well thought and allow easy chaining between different filters and transformations while staying performant.

pod ‘SVProgressHUD’

You are probably familiar with the image above, as you can now find this library in many iOS app.

In general, you don’t want your user to wait, and you should preload as much stuff as you can for a smooth experience.
But when you can’t, SVProgressHUD does a fine job at indicating a loading, in one line of code. You can also use it to display “toasts” to the user and even customize the image and text.

Too bad it doesn’t provide a determinate progress indicator, for which case you may want to use the equally good MBProgressHUD library.

pod ‘FontAwesomeKit’

Already well known in the web world, FontAwesome system is also available on iOS and it rocks !

If you are getting fed up of having to create @2x and @3x versions for each and every icon in your app, FontAwesomeKit will be a life savior. It basically allows you to use icons like you would use letters from a font. That means that every icons are vectorized and can take any color you want!

Sample icons from IonIcons

You can already use a variety of available icons from multiple iconic fonts like IonIcons or Zocial, but you can also create your own font and use it by extending the FAKIcon class.

That’s it! I hope you liked this article and that some of those libraries will find their way in your Podfile ☺

And you, what are your favorite Pods ?

--

--