WWDC24 SALE: Save 50% on all my Swift books and bundles! >>

Must have Pods 📦 | Libraries📚?

Forums > iOS


Which libraries you cannot go without? Here is a list of some i use almost always. If you have a workaround, post it! I would love to be pods free if possible 😎

Alamofire - https://cocoapods.org/pods/Alamofire
Alamofire is still present everywhere. Tried writing my own networking library but it was never as snapy and didn't cover everything for all cases.

IQKeyboardMAnagerSwift - https://cocoapods.org/pods/IQKeyboardManagerSwift
This gem works wonders if you have lots of forms and need to get the keyboard out of the way. With 2-3 lines you are safe in the whole project. Eventhough it is manageable to do it yourself. Paul already has some posts regarding that but you need to place notifications yourself on each VC so if there are lots of forms all over the app, this library is a must for me.

SwiftDate - https://cocoapods.org/pods/SwiftDate
Sure, you can manage dates most of the time. But in some cases it can get so convoluted its insane. Also, it can extract whatever you need with just a few lines of code. So when playing with dates i like to have this one ready.

KingFisher - https://cocoapods.org/pods/Kingfisher
KingFisher is one of the lightweight good ones which can be avoided, but so far i love it. I wrote some of my own cashing stuff and seems to work ok, but still use it from time to time.

These are some of the main ones. Of course i am not counting FB SDK and others as for those you have no choice. Also, ReactiveKit and Bond are kind of a must for MVVM so didn't include those. :) Any fancy ones out there you know about?


Nuke - https://github.com/kean/Nuke

Can't mention KingFisher without also mentioning Nuke. Alexander is one of the most performance obsessed Swift developers out there and it shows in Nuke. From my own testing, Nuke is significantly faster when it comes to main thread performance over Kingfisher. The aggresive disk caching is also a huge plus when using image urls that you know can be cached indefinitely.


Realm is my go to for data storage. https://cocoapods.org/pods/Realm though I am getting back in to Core Data hoping that Cloud Sync will be better.


One of my favourites is Swinject - (https://github.com/Swinject/Swinject): Easy to use dependency injection framework


I tend to avoid pods for the moment, want to focus on pure swift/cocoa for now... doing everything yourself is the best way to learn in my opnion ..


Haptica - https://github.com/efremidze/Haptica

Makes using Haptic Feadback easier, for example:



Right now I'm with @Gakkienl. I am early enough in my Swift/SwiftUI learning that I try to write everything myself. If I had a Swift(UI) job, I would be a lot more pragmatic about this.

Thanks for sharing, everyone!


Mostly, libraries are made to be generic and add more than you actually use. I aim to rely as little as possible on dependencies and attempt to do as much as I can myself.

If I do need to introduce a dependency, I prefer small, single file, minimal libraries.

But that's me. Do what works for you!



@FaroukZeino Gotta checkout Haptica! I am planing to play a bit with haptics soon and if i do some more complex stuff i might need a helping hand :)

@oreninit True, writing everything yourself is always best, but if all else fails or you need some help, they sure come in handy :)


Save 50% in my WWDC sale.

SAVE 50% To celebrate WWDC24, all our books and bundles are half price, so you can take your Swift knowledge further without spending big! Get the Swift Power Pack to build your iOS career faster, get the Swift Platform Pack to builds apps for macOS, watchOS, and beyond, or get the Swift Plus Pack to learn advanced design patterns, testing skills, and more.

Save 50% on all our books and bundles!

Archived topic

This topic has been closed due to inactivity, so you can't reply. Please create a new topic if you need to.

All interactions here are governed by our code of conduct.

Unknown user

You are not logged in

Log in or create account

Link copied to your pasteboard.