We want to share with you a useful selection of open-source libraries for iOS developer.
1. DZNEmptyDataSet
This should be the standard embedded in iOS, as a way of working with empty tables and browsing collections. By default, if the table view is empty, nothing is displayed on the screen. This is not the best user experience you can get.
')
With this library, you just need to follow certain protocols and iOS itself to take care of browsing the collections and select the necessary in a special font, in the form of beautiful messages for the user. An elementary solution for each project under iOS.
2. PDTSimpleCalendar
Need a simple, attractive and workable calendar for your application? Now there is PDTSimpleCalendar, which is probably the best addition to the calendar in iOS. You can customize both its appearance and additional functions.
3. MagicalRecord
They said that Core Data is easy. They said it was simple and beautiful. Oh, really, Apple? Tons of sample code added to each project does not look simple and elegant. Not to mention adding, deleting and updating many objects, keeping the context, creating different core data stacks for different environments, etc. etc. Of course, I love Core Data, but Apple could really simplify it with MagicalRecord.
MagicalRecord is a Core Data wrapper that hides unnecessary trash from the developer. If you have ever worked with dynamic writing templates (for example, Ruby on Rails), then you will feel at home. I recommend this library if you use Core Data in your application.
4. Chameleon
If you are reading this article, then, most likely, you are more a programmer than a designer. Then this is for you.
Chameleon is a color palette framework for iOS. It expands UIColor with beautiful, modern matte colors. It also allows you to create color palettes that you can define yourself. It can perform other functions, see them in the README. If you need a beautiful application, be sure to add this library to your project.
5. Alamofire
Alamofire is an elegant web library written in Swift. Have you ever used AFNetworking? Alamofire is his younger brother. Younger and more stylish, of course (AFNetworking is written in Objective-C).
Do you need to perform any actions on the Internet, such as downloading, downloading, receiving JSON, etc.? Alamofire for you. 8,000 people on GitHub can't be wrong.
6. TextFieldEffects
Don't you think that UITextField is a bit boring? Me too. Therefore, let's greet TextFieldEffects! I will not write much about it, just show a couple of examples of the capabilities of this library:
Yes, these are simple plug-in controllers. You can also use IBDesignables in the editor window.
7. GPUImage
Have you ever created camera apps? If not, then you will definitely want to after exploring this library.
GPUImage provides processor accelerated camera effects (both image and video) at an incredible speed. In the AppStore hundreds of applications using this library, among which there is one of mine.
8869 stars on GitHub and their number continues to increase.
8. iRate
What is the best way to get more reviews in the AppStore? I do not have exact answers to this question, but if you think about it, I would assume that it is just asking the user about it. Maybe this is a bit outdated method, most developers create their own alerts for applications, but if you don’t have time for it or you don’t want to create it all from scratch, it’s better to use iRate than not to use it. And that's what iRate is: a small library that you add to your project and forget to ask the user to leave a review. iRate will do it for you.
9. GameCenterManager
Whether you like or not singltons, but in this case, Game Center management will be easier with a little help from a well-known anti-pattern (you only have one Game Center in the game, do you?).
In truth, managing Game Center in iOS is not so difficult, but with this library it will become even easier and faster. And the best is the enemy of the good.
I used this library in one of my games and was pleased.
10. PKRevealController
PKRevealController 2 is the jewel of this list and one of my favorite ways to manipulate iOS. This is a side sliding menu (left, right or two-sided) that slides out with your finger (or when you press a button, which is not so cool, unlike the slide).
I tried to use other similar libraries, but PKRevealController is the best. Easy to install, many settings and gesture recognition, which is very good. It would be worth adding it to the iOS SDK as standard.
11. SlackTextViewController
Have you ever used the Slack iOS app? If you work in a large software company, most likely yes. For those who have not used it, I will say this: Slack taxis! Like Slack iOS, especially for large, user-entered text - the code is ready for use in your application!
Growing text area? There is. Gesture recognition, auto-complete, insert multimedia files? There is. Simple embedded solution? There is. What more could you need?
12. RETableViewManager
RETableViewManager helps you dynamically create and manage your table views with code. This provides predefined cells (for text, dates, etc. — see the screenshots below), but you can also create custom views and use them with those defined by default.
You can do all this in the editor window without using this library, but sometimes it is better to use simple code rather than a visual editor.
13. PermissionScope
A useful library for more comfortable use, by explaining the necessary system permissions before asking the user about them. Faster perception -> more users actively use the application -> more regular users -> better statistics -> more downloads. Quite a useful addition.
14. SVProgressHUD
"This image is loading properly, wait longer and do not refresh the page." This is exactly how SVProgressHUD looks in your application. If you need a custom wait indicator, this is one (and probably the best) of them.
15. FontAwesomeKit
Font Awesome is gorgeous, and with this library you can easily add it to your project and use it by any means.
16. SnapKit
Love automatic layouts? And should!
At least when creating it in the storyboard.
Creating restrictions with code is quite difficult without third-party help, but fortunately there is SnapKit and with it you can program your restrictions in an easy, declarative way. Try it.
17. MGSwipeTableCell
Another component of the user interface, which is so common in many applications, that Apple should probably think about adding something like this in the standard iOS SDK. Flipped table cells - the best description of this add-on. One of the best.
These are just 3 types of animation, there is more. Read the README file.
18. Quick
Unit testing in Swift, for Swift (ok, for Objective-C too), integrated with Xcode. If you are an Objective-C fan, I would recommend Specta instead, but for Swift, Quick will probably be the best.
Purchases in applications bring us a huge amount of sample code, which this library helps to get rid of and provides a shell for the most common tasks associated with transferring money from the user to your (or your company) wallet.
20. ReactiveCocoa
So, we have a little monster.
ReactiveCocoa is not a small project at all, unlike those mentioned in this list. ReactiveCocoa is a completely different programming style / architecture based on the values of signals and streams. This is something absolutely stunning and you need to first learn it to understand how it works. This is not an easy job, but worth it.
This is not the right place to teach you ReactiveCocoa, but here are links to useful resources if you are interested:
21. SwiftyJSON
Makes it easier to parse JSON in Swift.
22. Spring
Makes animation simple, chain and decorative.
23. FontBlaster
Simplifies loading custom fonts into the app.
24. TAPromotee
Cross promotion of your applications is one of the best marketing strategies you can implement for free. And with this library it becomes so easy that you can no longer make excuses for not doing this: add TAPromotee to your profile, set up and enjoy more downloads, completely free.
25. Concorde
Uploading lots of jpeg images to an app? With Concorde, you can do it in a more attractive way. In a progressive way.
26. KeychainAccess
A small helper library for managing access to Keychain.
27. iOS-charts
And last but not least, a library of diagrams in iOS! She is so useful and beautiful that I will not write much. Just see below what you can do in your project with the help of this library.
Many beautiful examples
Yes, this is all available as an inserted component. Unfortunately, there is no CocoaPods support yet, so you need to manually drag the project from your Xcode to the workspace.