10 Most useful iOS libraries on github.com
- By: Ondrej Rafaj
- October 25, 2015
AFNetworking probably needs no introduction but definitely deserves to be on the top of our list. If your app is going to access any remote resources than or you have found yourself a tool to do so. With it’s connection manager you just give it a path to your sever and ask for data.
RestKit, library used by most and hated by many. RestKit allows you to map your entire rest api onto objects making work with your requests much more organised. One of the biggest disadvantages of this system is that it relies on AFNetworking 1.3 which is quite obsolete now that beta of 3.0 has been released.
I have heard some rumours that upgrade to higher version of AFNetworking is not even considered as an option because how deeply it has been rooted into RestKit’s structure and that a full rewrite of the library would be required.
GPUImage is an incredible piece of kit. When it started, it provided us developers with means to capture and process pictures and video in a way most of us would spend eternity trying to code from scratch.
GPUImage processes all the video on the device GPU which allows it to operate in blazing speeds comparing to many libs that are processing image on a CPU.
So if you find that the Apple provided frameworks won’t allow you the freedom and potential you really deserve, look at GPUImage for answers.
4.) Facebook SDK
Until iOS 7 came out there was strangely no native Facebook support at all and us developers we had to rely on this library to do even such simple tasks like posting an update on users own wall.
We still do have to interact with Facebook on some occasion. When that time comes, the native SDK is well documented and offers easy access to all the API functionality.
Everybody knows that autolayout done in code could be quite painful experience especially if you haven’t done much of it before.
Masonry is a brilliant framework that allows you to use dot syntax to make all your constraints right on a very small space through blocks and pre-made methods.
A must if you working with any remote data. Reachability started out as demo code provided by Apple in one of their example projects but has turned into one of the most useful and developed single class libraries out there. The one I am pointing you to is a derivate from the original Apple library which has been infused by a ton of new shiny functionality.
There is also a Swift version/remake of the library made by Ashley Mills here:
If you haven’t done any before and when your boss asks you to put a photo library in an app you probably think it’s a piece of cake and that you might be done early and still catch some sunshine. Oh how you are mistaken … Photo gallery is not just a one collection view and a scroll view, (well it might be but) there is loads more stuff that needs to be done right. Zooming, tapping, aspect ratios, offsetting empty space when zoomed in, taking the image quality into consideration … All the things come at a price, the price is your time and you will need quite some to do this right.
Good news is that there is quite a few solutions out there that will just work “out of the box” for you. Probably the best and most used one is MWPhotoBrowser. Library contains preview grid, details, can display custom stuff too if you subclass it properly … Works like a treat. Definitely a keeper if you don’t have a couple of weeks to do your own.
GCDWebServer is a brilliant library which can save days of hard, hard work if you need to allow user to transfer any data into your app without having connecting iTunes and doing all through that. GCDWebServer can also nicely supplement “Open in …” Functionality which enables you to open files from email attachments or another app.
What you need to do is to create your html, bundle it and you can upload or download files through a web interface generated by your iPhone as long as you are on a local network.
Concept of rating AppStore apps has always been a bit sideways in my opinion as it is in our nature to moan and complaint more than praise someone’s else’s work … Because of that, developers had to come up with a system that would turn the yellow stars rating system in their favour.
iRate is a really simple, single class, lib that will ask your users to rate your app after a certain time or number of uses after which they are probably satisfied with your product.
There is a number of new approaches you can take to get even better results like ask if they are happy first and give them an option to send you a support email if not (this usually satisfies the persons need to complain) and direct them to the AppStore if they happy … anyway, this library was probably the first one out there so it definitely deserves its place in our top ten!
10.) mystery library?!
I thought I will hear the people’s voices here, and yes, obviously I have a few favourites and can’t decide which one to go for so please let me know in comments what beauty have I forgotten here and I will include it in the list