7 Open Source iOS Controls that Helped us Launch the GIFpitch app

(and can help you with your next app too)

GIFpitch, our latest app has just been approved by Apple and released to the App Store. The app helps you quickly create an animated GIF or your idea, business, pitch, etc. and easily share it.

When we released our Idealyzer app we wrote a post about 5 of the open source controls that we used in the app and it was our most popular post on Medium (thanks by the way!).

So, with the launch of GIFpitch we wanted to give you a run down on a few more controls that you might be able to use to jump start your next project. As always thanks to the folks that create and maintain these repositories. If you use one of these controls and you have ideas for updates please fork it or submit a pull request to give back to the community and help pay it forward.

Without further ado and in no particular order here are 7 open source iOS controls that we used for GIFpitch…


When you have an empty data set for a UITableView or a UICollectionView a blank empty screen is very confusing for your users. How do I get started? Is there an error or is the page is supposed to be empty?

DZNEmptyDataSet makes it super simple to guide your users when the data set is empty and provides a call to action to help them get started. We used it to help guide users when they haven’t made a pitch yet.

Github page — https://github.com/dzenbot/DZNEmptyDataSet

Follow the author on Twitter here — https://twitter.com/_dzen

Empty Data Set examples


Need to add some customized buttons or views to your keyboard? RFKeyboardToolbar is the control for you. It’s pretty simple to install and start working with. We used it as part of the GIF creation process so you can easily add slides or close the toolbar.

Github page — https://github.com/ruddfawcett/RFKeyboardToolbar

Follow the author on Twitter here — https://twitter.com/ruddfawcett

Custom buttons for a keyboard


Apps use their network connection all the time and this introduces potential delays in the UI. We can use the default UIActivityIndicatorView to show our users progress or we can use SpinKit to customize our app and stand out from others.

Github page — https://github.com/raymondjavaxx/SpinKit-ObjC

Follow the author on Twitter here — https://twitter.com/ramontorres

SpinKit example — custom UIActivityIndicatorView


Showing your users how much progress they are making can be a key piece of functionality in your app. We use it to show users how far along they are in the GIF creation process. We could have used the default UIProgressBar but CircleProgressBar gives you great customization options, like font size, font type, inner circle radius, label display and more. This is one of our favorite open source controls that we’ve used.

Github page —https://github.com/Eclair/CircleProgressBar

Follow the author on Twitter here — https://twitter.com/andoriyu

CircleProgressBar and the customizations available using Interface Builder (also available via code)


We’ve all seen the plain old UIAlertView. It’s a convenient way to alert our users to actions occurring in our app but they all look the same. CNPPopupController is a great control that helps provide the same functionality of the basic UIAlertView while letting you add custom images, text, and buttons to customize your user experience.

Github page —https://github.com/carsonperrotti/CNPPopupController

Follow the author on Twitter here — https://twitter.com/carsonp

A customized popup that is much better than the default UIAlertView


An app with GIF in the name should play animated GIFs right? Yes, probably…Instead of reinventing the wheel and writing code to play, pause, and stop GIFs we found a great control provided by the creators of the popular Flipboard app.

This control is basically a drop-in that lets you manage your animated GIFs quickly. This was key to our ability to complete GIFpitch in under a month. As indie iOS developers we need to take advantage of any opportunity to reduce our development time because time is money!

Github page — https://github.com/Flipboard/FLAnimatedImage

Follow the author on Twitter here — https://twitter.com/flipboard

Assorted animated GIFs playing using FLAnimatedImage


So you’re using all of these great controls to help with your app development project but how do you give credit to the creators of these components? You can write code to include all of the License files but there is definitely a better answer.

The creators of cocoapods have made a perfect utility that automatically creates acknowledgements that are added to the settings of your app. Each time you install a new cocoapod this file auto-generated for you so don’t need to worry about managing these License files and you make sure to give credit where credit is due.

Github page — https://github.com/CocoaPods/CocoaPods/wiki/Acknowledgements

Follow the author on Twitter here — https://twitter.com/CocoaPods

Acknowledgements generated in the Settings app for GIFpitch

We hope that these controls will help you out in your iOS app development. If you’re looking for some more controls make sure to take a look at www.cocoacontrols.com. Make it a habit to take a look once a week just to see what the community has created and it might inspire your next app.

If you want to see these controls in action take a look at our GIFpitch app. Pitch your app ideas in the app and let us know your feedback on Twitter. Thanks!

716 Labs is an indie app development studio run by Karl and Scott. Feel free to contact us if you’d like to discuss this article, any of our apps, or anything regarding iOS app development.