Over a million developers have joined DZone.
{{announcement.body}}
{{announcement.title}}

Top 10 Open Source iOS Libraries on GitHub to Speed Up App Development

DZone's Guide to

Top 10 Open Source iOS Libraries on GitHub to Speed Up App Development

These open source libraries can up your app development game, providing functionalities like animations, UI design, forms, and more.

· Open Source Zone ·
Free Resource

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

Image titleLottie 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.

Image title

Chameleon

10,458 ★

Pod 2.1.0

Image titleHere 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 needs 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

Image titleThe 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

Image titleThis 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.

Image title

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 the GitHub page for more information.

XLForm

4,799 ★

Pod 4.0.0

XLForm structureLooking 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.

Image title

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

Image titleJust 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.

Image title

JLRoutes

3,953★

Pod 2.0.5

Image titleThis 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 the GitHub page and the official documentation.

JLRoutes frame structure

JBChartView

3,752 ★

Pod 3.0.13

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

Image title

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

Image titleHere 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.

Image title

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'

Check out the GitHub page and official documentation.

FontAwesomeKit

2,594★

Pod 2.2.1

Image titleWhat'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, icons, Zocial, Fondation icons, 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 the GitHub page.

Image title

Wrapping It Up

The use of libraries makes the development process 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 check out those libraries to use in your projects.

Topics:
ios ,github ,open source ,mobile ,mobile app development

Opinions expressed by DZone contributors are their own.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}