Top 10 GitHub Open Source iOS Libraries

The iOS is one of the most popular operating systems in the world today. This means that developers need to build applications to serve the needs of users of devices that rely on the iOS. However, development could become a Herculean task the moment you try doing everything from scratch. Why reinvent the wheel?

With an open source platform like GitHub, you can very easily get to implement the projects of great developers and use them to add great features to yours. The libraries discussed in this article are arranged in order of a number of stars and they range from libraries for creating great calendars to improving user interfaces and making the development process very easy in general. Without wasting time, let’s get into the thick of things.

Lottie-Ios

11 915 ★

Pod 2.1.5

Lottie is an iOS library for parsing Adobe After Effects animations. It does this by utilizing the Bodymovin After Effects plugin and ensuring that the animations are rendered beautifully on mobile and web platforms.

With this, development is more enjoyable as designers can easily create beautiful animations to make the users marvel.

You can install this library using Cocoapods. Simply add the pod to your podfile using:

pod 'lottie-ios'

And run using:

pod install

After this, you can import it in Objective C using:

#import <Lottie/Lottie.h>

And in Swift using:

import Lottie

Just in case you feel less occupied, Airbnb invites you to contribute to this open source iOS library. You can learn more from the GitHub and official websites.

Chameleon

10 458 ★

Pod 2.1.0

Here is an iOS library that helps improve the user interface.

Chameleon is a flat color framework for iOS, which helps make development a breeze. With this powerful tool, your application is sure to get a very beautiful interface.

It is known that while picking colors, the choice of the right RGB values need to be made. But with Chameleon, it is easier to get those great color combinations and saving yourself lots of frustration.

Using Cocoapods, Chameleon can be installed by simply adding the following command to the podfile:

use_frameworks!

pod 'ChameleonFramework'

You can learn more from the GitHub and official websites.

Chameleon basic flat colors

FastImageCache

7 671 ★

Pod 1.3

The process of switching from on-disk image data and then rendering it as a core animation layer is usually time, energy and resources sapping.

However, with FastImageCache, images of similar sizes are stored together ensuring that it persists and the return of the image data to the user is faster.

Fast Image Cache manages cache expiry based on the recency of image usage, making development process faster and less tasking.

This iOS library can easily be installed using Cocoapods which makes integration less time-consuming.

You can learn more from the GitHub and official websites.

FastImageCache data structure

FSCalendar

5 789 ★

Pod 2.7.9

This is a quick calendar development library for iOS. With FSCalendar you can create amazing calendars for your iOS apps which are compatible with Objective-C and Swift without having to code it up from scratch, making for a faster development experience.

You can easily install it using Cocoapods.

After installation, you can include it in your iOS8+ apps using:

use_frameworks!

target '<Your Target Name>' do

pod 'FSCalendar'

end

And for your iOS7+ apps using:

target '<Your Target Name>' do

pod 'FSCalendar'

end

To use it for iOS7+ you need NSCalendarExtension for compatibility. Check out Github page for more information.

XLForm

XLForm structure

4 799 ★

Pod 4.0.0

Looking for an iOS library for creating table view forms?

XLForm is one of the most powerful, efficient and customizable libraries for developing dynamic table-view forms. Development becomes a great experience and you get to save a lot time and get great results too.

Let’s say you can eat your cake, and have it.

XLForm can easily be installed using Cocoapods.

It can be added to the pod with the command:

pod 'XLForm', '~> 4.0'

And then:

pod install

If you prefer using Swift for development, XmartLabs the creators of this great library have also created Eureka for better creation of forms using Swift.

Learn more on Github.

JTAppleCalendar

4 082 ★

Pod 7.1.4

Just like FSCalendar, JTAppleCalendar can also be used to create lovely calendars with a great design which are also very customizable. You can easily create custom cells and calendar views.

It is installed using Cocoapods. You can integrate the JTAppleCalendar into your project using:

source 'https://github.com/CocoaPods/Specs.git'

platform :ios, '10.0'

use_frameworks!

target '<Your Target Name>' do

pod 'JTAppleCalendar', '~> 7.0'

end

Then, run the following command:

pod install

You can learn more from the GitHub and official websites.

JLRoutes

3 953★

Pod 2.0.5

This is an iOS library for URL routing by using just a simple block-based API. Created by Joel Levin, what JLRoutes does is to efficiently manage the URL routes for the schemes in your iOS app.

What makes JL Routes great to use is its support for wildcard matching and route namespaces making the process smoother and less time-consuming.

Install JLRoutes using Cocoapods.

It is also available for installation using Carthage. Simply add

github "joeldev/JLRoutes" to your Cartfile.

Check out Github page and Official documentation.

JLRoutes frame structure

JBChartView

3 752 ★

Pod 3.0.13

At one point or the other during development, there is a need to visualize data for the users to see. With JBChartView created by JawBone, it is easier.

JBChartView is an iOS-based charting library for both line and bar graphs.It makes the creation of beautiful charts effortless and faster. As a plus, it comes with a lot of customization options.

Apart from supporting the creation of line and bar graphs, it also supports Drop-in UI view subclass and the expanding and collapsing of animations.

JBChartView can be installed using Cocoapods and then added to your project by adding the following command to your podfile:

platform :ios, '6.0'

pod 'JBChartView'

Learn more on Github.

BFMSimpleLineGraph

2 665 ★

Pod 4.1

Here is another charting library for iOS. BFMSimpleLineGraph is a library that helps developers create quality line graphs for their apps with great customizability as well.

A downside is that it doesn’t support any other graph type except line graphs, however, this doesn’t mean it is less useful as it creates interactive graphs as well.

It is an easy to install the library, is lightweight and doesn’t have dependency issues.

Talking about setting it up, you can do it using Cocoapods by simply adding the following command into the podfile:

pod 'BEMSimpleLineGraph'

Github link (2,660 Stars):

Check out Github page and Official documentation.

FontAwesomeKit

What’s an application with poor font types? That’s most likely an application with a poor user interface.

FontAwesomeKit is an iOS library created by Pride Chung that makes it easier create beautiful app designs by choosing great fonts.

It has a large support for lots of font providers:

Currently, FontAwesomeKit supports 6 different icon fonts such as FontAwesome 4.7, Foundation icons, Zocial, ionicons, Octicons and Material 2.0.0.

It can easily be installed using Cocoapods by adding the following to the podfile:

pod 'FontAwesomeKit', '~> 2.2.0'

The font libraries can also be added into the podfile using:

pod 'FontAwesomeKit/FontAwesome'

pod 'FontAwesomeKit/FoundationIcons'

pod 'FontAwesomeKit/Zocial'

pod 'FontAwesomeKit/IonIcons'

pod 'FontAwesomeKit/Octicons'

pod 'FontAwesomeKit/Material'

The podfile can then be run using:

pod install

Visit Github page.


Wrapping it up

The use of libraries makes the development process royal and faster, and the libraries we have taken a look at have great capabilities.

However, this is not to say that they are the only iOS libraries out there, there are more.

A recap of the libraries discussed:

  • Lottie-Ios for animation.
  • Chameleon, FontAwesomeKit for design.
  • FSCalendar, JTAppleCalendar for customizable calendars.
  • XLForm for form creation.
  • JLRoutes for URL routing.
  • JBChartView, BFMSimpleLineGraph for data visualization.

What else are you waiting for?

Go out those libraries to use in your projects.