Awesome-iOS
A curated list of most common & awesome iOS frameworks, libraries, tools, components and much more.
https://github.com/ElfSundae/Awesome-iOS
Last synced: 19 days ago
JSON representation
-
App
- douyin-ios-objectc - 抖音 iOS Objective-C 版
-
Database, ORM, Cache
- MJExtension - A fast, convenient and nonintrusive conversion framework between JSON and model.
- PINCache - Fast, non-deadlocking parallel object cache for iOS, tvOS and OS X
- MMKV - An efficient, small mobile key-value storage framework developed by WeChat.
- SPTPersistentCache - Everyone tries to implement a cache at some point in their iOS app’s lifecycle, and this is ours.
- WCDB - WCDB is a cross-platform database framework developed by WeChat.
- FMDB - A Cocoa / Objective-C wrapper around SQLite.
- SAMKeychain - Simple Objective-C wrapper for the keychain that works on Mac and iOS.
- UICKeyChainStore - UICKeyChainStore is a simple wrapper for Keychain on iOS, watchOS, tvOS and macOS. Makes using Keychain APIs as easy as NSUserDefaults.
- JQFMDB - FMDB的封装,操作简单,线程安全,扩展性强,直接操作model或dictionary
- CTPersistance - iOS Database Persistence Layer with SQLite
- LKDBHelper - 全自动的插入,查询,更新,删除, an automatic database operation thread-safe and not afraid of recursive deadlock
- SQLitePersistentObjects - Persistent Objects for Cocoa & Cocoa Touch that using SQLite.
-
Data/File Archive & Unarchive
- SSZipArchive - ZipArchive is a simple utility class for zipping and unzipping files on iOS, macOS and tvOS.
- FastCoding - A faster and more flexible binary file format replacement for NSCoding, Property Lists and JSON
- GZIP - A simple NSData category for gzipping/unzipping data in iOS and Mac OS.
- LzmaSDKObjC - Lzma SDK for Swift and Objective-C ( iOS & MacOS ) based on extended functionality of the C++ LZMA SDK code.
- UnrarKit - Easily read RAR archives on Mac and iOS
- SARUnArchiveANY - A very useful library for Unarchiving the .zip, .rar, .7z files for iOS.
- CocoaSecurity - Encrypt/Decrypt: AES. Hash: MD5, SHA(SHA1, SHA224, SHA256, SHA384, SHA512). Encode/Decode: Base64, Hex.
-
Foundation
- Nimbus - Nimbus is an iOS framework whose feature set grows only as fast as its documentation.
- CocoaLumberjack - A fast & simple, yet powerful & flexible logging framework.
- LxDBAnything - Automate box any value! Print log without any format control symbol!
- libextobjc - A Cocoa library to extend the Objective-C programming language.
- PromiseKit - Promises for Swift & ObjC.
- ISHPermissionKit - A polite and unified way of asking for permission on iOS.
- LocationManager - Easily get the device's current location on iOS.
- MGJRouter - 一个高效/灵活的 iOS URL Router
- ZIKRouter - Interface-oriented router for discovering modules, and injecting dependencies with protocol in Objective-C and Swift.
- JLRoutes - URL routing library for iOS with a simple block-based API
- DeepLinkKit - A splendid route-matching, block-based way to handle your deep links.
- MMWormhole - Message passing between iOS apps and extensions.
- XExtensionItem - Easier sharing of structured data between iOS applications and share extensions
- libPhoneNumber-iOS - iOS port from libphonenumber (Google's phone number handling library)
- ESFramework - ESFramework is an efficient, lightweight foundational framework for iOS, macOS, watchOS, and tvOS.
- YYKit - A collection of iOS components.
- ProtocolKit - Protocol extension for Objective-C
- NullSafe - NullSafe is a simple category on NSNull that returns nil for unrecognised messages instead of throwing an exception
- fishhook - A library that enables dynamically rebinding symbols in Mach-O binaries running on iOS.
- KKJSBridge - 一站式解决 WKWebView 支持离线包,Ajax 请求,表单请求和 Cookie 同步的问题 (基于 Ajax Hook 和 Cookie Hook)
- WebViewJavascriptBridge - An iOS/OSX bridge for sending messages between Obj-C and JavaScript in UIWebViews/WebViews.
- TDTouchID - TDTouchID是一个封装好的指纹验证库,可以用来做iOSAPP的登录/支付等验证。
- QTEventBus - iOS事件总线,支持AppDelegate解耦,支持基于响应链的局部总线
- BeeHive - 🐝 BeeHive is a solution for iOS Application module programs, it absorbed the Spring Framework API service concept to avoid coupling between modules.
- YBTaskScheduler - iOS task scheduler, reduce the burden of CPU and memory. / iOS 任务调度器,为 CPU 和内存减负(用于性能优化)
- coobjc - coobjc provides coroutine support for Objective-C and Swift.
- BMChineseSort - 列表中文分组排序工具,支持字符串数组&模型数组 (支持swift)
- getClientInfo - iOS中获取各种设备信息ID的方法总结(iPhone 11 已更新)
- MotionOrientation - An observer to notify the orientation of iOS device changed, using CoreMotion for taking the orientation in 'Orientation Lock'.
- KVOController - Simple, modern, thread-safe key-value observing.
-
Media
- SwiftyCam - A simple, Snapchat-style iOS Camera framework for easy photo and video capture.
- KSYDiversityLive_iOS - 金山云SDK多样化接入方式,提供直播全链路数据开放,支持第三方连麦、录屏、美颜、贴纸、摄像头等多媒体处理方案提供商接入,共建移动直播大生态。
- StreamingKit - A fast and extensible gapless AudioPlayer/AudioStreamer for OSX and iOS (iPhone, iPad)
- LFLiveKit - LaiFeng IOS Live Kit,H264 and AAC Hard coding,support GPUImage Beauty, rtmp transmission,weak network lost frame,Dynamic switching rate
- HTTPLiveStreaming - iOS / Mac OSX H.264 / AAC Hardware Encoding and Streaming over RTP / RTSP using Video Tool Box
- GStreamer - a flexible, fast and multiplatform multimedia framework.
- ZFPlayer - Support customization of any player SDK and control layer(支持定制任何播放器SDK和控制层)
- PBJVision - iOS Media Capture – features touch-to-record video, slow motion, and photography
- SCRecorder - iOS camera engine with Vine-like tap to record, animatable filters, slow motion, segments editing
- GoPlay - GoPlay is a media player framework for iOS. Based on FFmpeg and OpenGL ES 2.0. support all formats and custom your own filters by GLSL.
- novocaine - An analgesic for high-performance audio on iOS and OSX.
- mobile-ffmpeg - FFmpeg for Android, iOS and tvOS
- AudioKit - Swift audio synthesis, processing, & analysis platform for iOS, macOS and tvOS
- TheAmazingAudioEngine - Core Audio, Cordially: A sophisticated framework for iOS audio applications, built so you don't have to.
- SRGMediaPlayer - The SRG Media Player library provides a simple way to add universal audio / video playback support to any application.
- SGPlayer - A powerful media play framework for iOS, macOS, and tvOS.
- KSYLive_iOS - 金山云直播SDK [ iOS推流+播放 ]融合版 支持美颜滤镜(Beauty Filter)、美声(Beauty Voice)、软硬编(Software/Hardware Encoder) 、网络自适应(Network Auto Adapt)、混音(Audio Mixer)、混响(Reverb)、画中画(PIP)
- KSYMediaPlayer_iOS - 金山云iOS播放SDK(KSYUN Live Streaming player SDK),支持RTMP HTTP-FLV HLS 协议(supporting RTMP HTTP-FLV HLS protocol),直播延时2-3秒(Living delay 2 or 3 seconds)
- AppRTC - iOS implementation of the Google WebRTC Demo.
- SRS - SRS is a RTMP/HLS/WebRTC/SRT/GB28181 streaming cluster, high efficiency, stable and simple.
- DOUAudioStreamer - A Core Audio based streaming audio player for iOS and macOS
- FreeStreamer - A low-memory footprint streaming audio player for iOS and OS X
- AWLive - 最简单的iOS 推流代码,视频捕获,软编码(faac,x264),硬编码(aac,h264),横屏直播,美颜,flv编码,rtmp协议
- LiveVideoCoreSDK - iOS 的手机视频直播,基于开源videocore进行了改进
- LFRtmp - 一个全开源的纯OC实现的RTMP推流SDK支持AAC、H264、美颜滤镜、AMF编解码。
- rtmp-wrapper - librtmp wrapper class for iOS use
- re - Generic library for real-time communications with async IO support
- ijkplayer - Android/iOS video player based on FFmpeg n3.4, with MediaCodec, VideoToolbox support.
- SuperPlayer - 超级播放器是基于腾讯云播放器SDK的播放器,能快速的集成视频信息拉取、横竖屏切换、清晰度选择、弹幕、直播时移等功能。
- PLPlayerKit - PLPlayerKit 是一个适用于 iOS 的音视频播放器 SDK,可高度定制化和二次开发,特色是支持 RTMP, HTTP-FLV 和 HLS 直播流媒体播放。
- SJVideoPlayer - 短视频播放器 可接入 ijkplayer aliplayer alivodplayer plplayer
- JSQSystemSoundPlayer - A fancy Obj-C wrapper for Cocoa System Sound Services
- KTVHTTPCache - A powerful media cache framework.
- WAVideoBox - 秒级! 三行代码实现iOS视频压缩、变速、混音、合并、GIF水印、旋转、换音、裁剪 ! 支持不同分辩率,支持你能想到的各种混合操作!
- MCamera - CameraViewController which allows to take photos, set filters, peform image blurring and more
- SDAVAssetExportSession - AVAssetExportSession drop-in replacement with customizable audio&video settings
- SuperPlayer - 超级播放器是基于腾讯云播放器SDK的播放器,能快速的集成视频信息拉取、横竖屏切换、清晰度选择、弹幕、直播时移等功能。
- GoPlay - GoPlay is a media player framework for iOS. Based on FFmpeg and OpenGL ES 2.0. support all formats and custom your own filters by GLSL.
- HaishinKit - Camera and Microphone streaming library via RTMP, HLS for iOS, macOS, tvOS.
-
Networking
- AFNetworking - A delightful networking framework.
- SDWebImage - Asynchronous image downloader with cache support as a UIImageView category.
- CocoaAsyncSocket - Asynchronous socket networking library for Mac and iOS.
- Starscream - A conforming WebSocket (RFC 6455) client library in Swift.
- RMStore - A lightweight iOS library for In-App Purchases
- ESAPIClient - An API client library built on top of AFNetworking and AFNetworkingExtension.
- YBNetwork - 基于 AFNetworking 网络中间层,注重性能,设计简洁,易于拓展
- Jetfire - WebSocket RFC 6455 client library for iOS and OSX.
- PocketSocket - Objective-C websocket library for building things that work in realtime on iOS and OS X.
- Mars - Mars is a cross-platform network component developed by WeChat.
- NEKit - A toolkit for Network Extension Framework
- SocketRocket - A conforming Objective-C WebSocket client library.
- YTKNetwork - A high level request util based on AFNetworking
-
Test
- Quick - The Swift (and Objective-C) testing framework.
- KIF - Keep It Functional - An iOS Functional Testing Framework
- OHHTTPStubs - Stub your network requests easily! Test your apps with fake network data and custom response time, response code and headers!
-
Tools
- XcodeGen - A command line tool written in Swift that generates your Xcode project using your folder structure and a project spec.
- XcodeProj - Read, update and write your Xcode projects
- Chisel - Chisel is a collection of LLDB commands to assist debugging iOS apps.
- MTHawkeye - Profiling / Debugging assist tools for iOS. (Memory Leak, OOM, ANR, Hard Stalling, Network, OpenGL, Time Profile ...)
- Space Commander - Commit fully-formatted Objective-C as a team without even trying.
- NSLogger - A modern, flexible logging tool
- MLeaksFinder - Find memory leaks in your iOS app at develop time.
- FBRetainCycleDetector - An iOS library that finds retain cycles using runtime analysis.
- DWURecyclingAlert - Optimizing UITableViewCell For Fast Scrolling
- NWPusher - OS X and iOS application and framework to play with the Apple Push Notification service (APNs)
- Knuff - The debug application for Apple Push Notification Service (APNs).
- Appium - Appium is an open source, cross-platform test automation tool for native, hybrid and mobile web and desktop apps.
- Buck - A fast build system that encourages the creation of small, reusable modules over a variety of platforms and languages. https://buck.build
- Fui - Find unused Objective-C imports.
- LLDebugTool - LLDebugTool is a debugging tool for developers and testers that can help you analyze and manipulate data in non-xcode situations.
- JSDebugger - JavaScript-Based Debugger For Inspecting Running State Of Your Application
- WBWebViewConsole - In-App debug console for your UIWebView & WKWebView
- Uncrustify - A source code beautifier for C, C++, C#, ObjectiveC, D, Java, Pawn and VALA
- Flipper - A desktop debugging platform for mobile developers.
- Aspects - Delightful, simple library for aspect oriented programming in Objective-C and Swift.
- Stinger - Stinger is a high-efficiency library with great compatibility, for aop in Objective-C, using libffi.
- LSSafeProtector - 强大的防止crash框架,不改变原代码支持KVO自释放,可以检测到dealloc时未释放的kvo,等19种crash
- TimeProfiler - Recording all OC methods in the main thread takes time
- XXShield - It's a library can avoid some crash in iOS project written by Objective-C.
- JSPatch - JSPatch bridge Objective-C and Javascript using the Objective-C runtime.
- Mango - MangoFix is a DSL which syntax is very similar to Objective-C,MangoFix is also an iOS App hotfix SDK.
- ANYMethodLog - Log any method call of object in Objective-C 打印 Objective-C 对象中的任何方法
- MessageThrottle - A lightweight Objective-C message throttle and debounce library.
- iOSMixProject - 马甲包混淆工程
- KLGenerateSpamCode - iOS 马甲应用工具:垃圾代码生成器
- WHC_Scan - 高效强大扫描分析iOS和Android项目里没有使用的类Mac开源工具,清理项目垃圾类,让项目结构干净清爽
- WBBlades - 基于Mach-O解析技术的包大小占比分析、基于反汇编的Objective-C & Swift无用代码(冗余类)检测、点对点崩溃解析
- FLEX (Flipboard Explorer) - A set of in-app debugging and exploration tools for iOS development.
- DoraemonKit - 简称 "DoKit" 。一款功能齐全的客户端( iOS 、Android、微信小程序 )研发助手,你值得拥有。
- xcconfigs - Common Xcode configuration files/settings.
-
UI Components
- SVProgressHUD - A clean and lightweight progress HUD for your iOS and tvOS app.
- MBProgressHUD - an iOS drop-in class that displays a translucent HUD with an indicator and/or labels while work is being done in a background thread.
- NVActivityIndicatorView - A collection of awesome loading animations
- MJRefresh - An easy way to use pull-to-refresh.
- FLAnimatedImage - Performant animated GIF engine for iOS
- IQKeyboardManager - Codeless drop-in universal library allows to prevent issues of keyboard sliding up and cover UITextField/UITextView.
- TPKeyboardAvoiding - A drop-in universal solution for moving text fields out of the way of the keyboard in iOS
- Harpy - Notify users when a new version of your app is available and prompt them to upgrade.
- UIScrollView-InfiniteScroll - Infinite scroll implementation as a category for UIScrollView.
- XLForm - XLForm is the most flexible and powerful iOS library to create dynamic table-view forms.
- InAppSettingsKit - Easily add in-app settings to your iPhone apps.
- DZNEmptyDataSet - A drop-in UITableView/UICollectionView superclass category for showing empty datasets whenever the view has no content to display
- TORoundedButton - A high-performance button control with rounded corners for iOS.
- VBFPopFlatButton - Flat button with 9 different states using POP
- BEMCheckBox - Beautiful, highly customizable, animated checkboxes for iOS.
- STULabel - A faster and more flexible label view for iOS
- TTTAttributedLabel - A drop-in replacement for UILabel that supports attributes, data detectors, links, and more
- ZSSRichTextEditor - A beautiful rich text WYSIWYG editor for iOS with a syntax highlighted source view
- RSKGrowingTextView - A light-weight UITextView subclass that automatically grows and shrinks.
- ZCAnimatedLabel - UILabel replacement with fine-grain appear/disappear animation
- LCActionSheet - 一款简约而不失强大的 ActionSheet,微博、微信和 QQ 都采用了极其类似的样式,完全支持 Swift。
- RMActionController - This is an iOS control for presenting any UIView in an UIAlertController like manner
- PageMenu - A paging menu controller built from other view controllers placed inside a scroll view (like Spotify, Windows Phone, Instagram)
- VTMagic - A page container library for iOS
- FFPopup - Presenting custom views as a popup in iOS.
- LNPopupController - LNPopupController is a framework for presenting view controllers as popups of other view controllers, much like the Apple Music and Podcasts apps.
- FSCalendar - A fully customizable iOS calendar library, compatible with Objective-C and Swift
- Context-Menu - You can easily add awesome animated context menu to your app.
- TOCropViewController - A view controller for iOS that allows users to crop portions of UIImage objects.
- IDMPhotoBrowser - IDMPhotoBrowser is a new implementation based on MWPhotoBrowser.
- UITableView-FDTemplateLayoutCell - Template auto layout cell for automatically UITableViewCell height calculating
- CHTCollectionViewWaterfallLayout - The waterfall (i.e., Pinterest-like) layout for UICollectionView.
- FDWaveformView - Reads an audio file and displays the waveform
- IQAudioRecorderController - A drop-in universal library allows to record audio within the app with a nice User Interface.
- XLPaymentHUD - 支付宝支付动画
- IIGuideViewController - A Library for making animated tutorials inside your app (新手引导、新手教程、功能介绍、功能引导)
- TTGTagCollectionView - showing different size tag views in a vertical or horizontal scrollable view. 标签流显示控件,同时支持文字或自定义View
- BLKFlexibleHeightBar - Create condensing header bars like those seen in the Facebook, Square Cash, and Safari iOS apps.
- ContainerView - ContainerView is designed to add a cool swim from the bottom to the animation with the effect of scale, controlled by the help of a gesture, scrollView also takes control.
- LMForm - iOS表单配置框架
- MGBoxKit - Simple, quick iOS tables, grids, and more
- UFKit - 快速集成表单
- SCIndexView - SCIndexView provide a index view like Wechat.
- LYEmptyView - 一行代码集成空白页面占位图(无数据、无网络占位图)
- SPButton - 自定义按钮,图片可在上、左、下、右,可调整图文间距
- BButton - Twitter Bootstrap buttons for iOS.
- HJCornerRadius - A category for UIImageView with support for cornerRadius automatically
- HYBImageCliped - 高效处理圆角的扩展
- YXYDashLayer - Colorful Rounded Rect Dash Border
- M80AttributedLabel - Another attributed label using CoreText
- MPITextKit - Powerful text framework for iOS to display rich text based on TextKit.
- TYAttributedLabel - 简单,强大的属性文本控件(无需了解CoreText),支持图文混排显示,支持添加链接,image和UIView控件,支持自定义排版显示
- YBAttributeTextTapAction - 一行代码添加文本点击事件/a fast way to implement click event text
- MarqueeLabel - A drop-in replacement for UILabel, which automatically adds a scrolling marquee effect when the label's text does not fit inside the specified frame.
- UUMarqueeView - Customizable marquee view. #Marquee,MarqueeView,跑马灯,滚屏,上翻,左滑,多行,自定义
- RollingNotice - 滚动公告、轮播广告,支持灵活自定义cell
- EBBannerView - Just 1 line:Show a banner the same as iOS 9~13 Notification, or show a custom view.
- GrowTextView - 一个比较完美的高度自适应输入框
- SHSPhoneComponent - UITextField and NSFormatter subclasses for formatting phone numbers. Allow different formats for different countries(patterns).
- CRBoxInputView - Verify code input view. Support security type for password.短信验证码输入框,支持密文模式
Programming Languages
Categories
Sub Categories
Keywords
ios
92
objective-c
66
swift
45
cocoapods
25
carthage
12
animation
11
macos
11
wechat
9
player
9
popup
8
menu
8
xcode
8
android
7
tvos
7
ios-ui
7
video
7
ios-animation
6
alert
6
uikit
6
actionsheet
6
apple
6
image
5
uiviewcontroller
5
gif
5
iphone
5
watchos
5
audio
5
picker
5
scroll
5
avfoundation
5
text
4
label
4
im
4
navigationbar
4
network
4
ui
4
ipad
4
navigation
4
objc
4
custom
4
scrollview
4
swift-library
4
sheet
3
pop
3
pod
3
transition
3
chat
3
visionos
3
photos
3
windows
3