GitHub第三方資源庫(kù)整理(OC篇)

隨著GitHub star 的項(xiàng)目越來(lái)越多,而且之前也沒(méi)有整理,所以找起來(lái)特別麻煩,于是就有了這篇文章,一是方便我自己查找,都作了分類,而且都作了標(biāo)注,對(duì)應(yīng)找起來(lái)容易得多;二是分享出來(lái),資源共享。這篇文章會(huì)持續(xù)更新,有好的GitHub項(xiàng)目就會(huì)加進(jìn)來(lái),并且會(huì)把更新說(shuō)明寫(xiě)在文末。

更直觀更方便的內(nèi)容形式,請(qǐng)?jiān)L問(wèn)本文的GitBook地址:GitHub第三方資源庫(kù)整理(OC篇)

或者可以訪問(wèn)GitHub地址:JYOSList

網(wǎng)絡(luò)

  • AFNetworking:mattt大神的網(wǎng)絡(luò)事件處理框架。
  • XMPPFramework:XMPP,主要用于即時(shí)通訊。
  • CocoaAsyncSocket:異步socket請(qǐng)求框架。
  • Reachability:用來(lái)檢查應(yīng)用當(dāng)前的網(wǎng)絡(luò)連接狀況,是蘋果Reachability類的直接替代品,支持ARC,支持block,使用GCD方法來(lái)通知網(wǎng)絡(luò)接口的變化。
  • SocketRocket:WebSocket協(xié)議是一種網(wǎng)絡(luò)協(xié)議,它的Web設(shè)計(jì)實(shí)現(xiàn)了瀏覽器與服務(wù)器的雙向通訊。通過(guò)使用WebSockets,你可以重復(fù)使用現(xiàn)有的工具建立網(wǎng)頁(yè),就像大多數(shù)移動(dòng)應(yīng)用程序重復(fù)使用他們API中的HTTP協(xié)議一樣。
  • CocoaSPDY:Twitter出品的一款關(guān)于HTTP請(qǐng)求的框架。
  • OHHTTPStubs:測(cè)試篡改你app的網(wǎng)絡(luò)數(shù)據(jù)響應(yīng)時(shí)間響應(yīng)代碼和頭文件,非常容易就摧毀你的網(wǎng)絡(luò)請(qǐng)求。

綜合

  • ReactiveCocoa:簡(jiǎn)稱RAC,函數(shù)響應(yīng)式編程框架。

  • YYKit:ibireme寫(xiě)的一款綜合框架,包含YYModelYYCacheYYImageYYWebImageYYTextYYKeyboardManagerYYDispatchQueuePoolYYAsyncLayerYYCategories

  • AsyncDisplayKit:facebook出品,被應(yīng)用于Paper,是一款能夠保持界面流暢性的iOS開(kāi)源框架,即使是最復(fù)雜的用戶界面,也可以讓其流暢運(yùn)行并快速響應(yīng)。

  • RestKit:旨在與RESTful web服務(wù)的交互變得更簡(jiǎn)單快速,具有強(qiáng)大的特性:

    • 簡(jiǎn)單高層次的HTTP請(qǐng)求/響應(yīng)系統(tǒng);
    • 框架支持切換服務(wù)器以及環(huán)境;
    • Core Data支持;
    • 對(duì)象映射系統(tǒng);
    • 生成數(shù)據(jù)庫(kù)文件;
    • 可插入解析層。
  • NewsBlur:是一個(gè)個(gè)人的新聞閱讀器,將人們聚在一起談?wù)撌澜纭?/p>

動(dòng)畫(huà)

動(dòng)畫(huà)引擎

  • POP:facebook出品,動(dòng)畫(huà)引擎(推薦)。
  • Canvas:動(dòng)畫(huà)引擎,最喜歡的就是它關(guān)聯(lián)Runtime Attribute了,可以在SB添加KeyPath直接加動(dòng)畫(huà)。
  • JazzHands:作用于UIKitkeyframe-based動(dòng)畫(huà)框架,具有良好的表現(xiàn)。

動(dòng)畫(huà)引擎使用

  • Popping:使用pop動(dòng)畫(huà)引擎做的動(dòng)畫(huà)合集。
  • AGGeometryKit-POP:結(jié)合Pop的一個(gè)動(dòng)畫(huà)框架,帶有力學(xué)動(dòng)畫(huà)效果。
  • FastAnimationWithPOP:SB快速導(dǎo)入動(dòng)畫(huà),以前用過(guò)的,不過(guò)推薦使用Canvas

轉(zhuǎn)場(chǎng)動(dòng)畫(huà)

  • VCTransitionsLibrary:控制器之間的轉(zhuǎn)場(chǎng)動(dòng)畫(huà)。
  • FDFullscreenPopGesture:全屏POP的手勢(shì)動(dòng)畫(huà)。
  • VVBlurPresentation:王巍寫(xiě)的一款簡(jiǎn)單過(guò)渡到另外一個(gè)控制器,但是保持原來(lái)控制器的視圖并模糊化,這對(duì)于一些提示比較有用。
  • LNPopupController:彈窗效果present到另外一個(gè)控制器,就像Apple Musicapp和Podcastsapp里的效果一樣。
  • KMNavigationBarTransition:不需要寫(xiě)任何代碼就可實(shí)現(xiàn)對(duì)不同風(fēng)格導(dǎo)航的轉(zhuǎn)場(chǎng)動(dòng)畫(huà)管理。
  • AnimatedTransitionGallery:許多種不同的轉(zhuǎn)場(chǎng)動(dòng)畫(huà)風(fēng)格。

其他動(dòng)畫(huà)

  • RGCardViewLayout:City Guide App的卡片滑動(dòng)動(dòng)畫(huà)效果。
  • iCarousel:卡片樣式的旋轉(zhuǎn)木馬動(dòng)畫(huà)效果。
  • BCGenieEffect:實(shí)現(xiàn)了在Mac OS 中最小化或最大化窗口時(shí)的過(guò)渡效果。

自動(dòng)布局

  • Masonry:自動(dòng)布局,目前在用(推薦)。
  • PureLayout:自動(dòng)布局,OCSwift皆可用。
  • SDAutoLayout:自動(dòng)布局代碼精簡(jiǎn)化,支持CellTableView高度自適應(yīng)。
  • OAStackView:UIStackView iOS9之后的控件,對(duì)于自動(dòng)布局這塊非常方便,OAStackView就是兼容iOS7+系統(tǒng)的框架。
  • FDStackView:百度知道團(tuán)隊(duì)出品,兼容UIStackView iOS6+系統(tǒng),FDStackView Part1FDStackView Part2FDStackView Part3這三篇文章是作者分析FDStackView的設(shè)計(jì)實(shí)現(xiàn)過(guò)程(推薦)。

鍵盤交互管理

加載指示、HUD

  • MBProgressHUD:加載進(jìn)程指示框架,都知道。
  • SVProgressHUD:輕量的HUD
  • NJKWebViewProgress:顯示webView交互進(jìn)程的控件。
  • Shimmer:facebook出品,給APP的任何view添加shimmering動(dòng)畫(huà)效果,這個(gè)框架最初就是作為Paper加載動(dòng)畫(huà)的。
  • PQFCustomLoaders:很有趣的自定義加載器。
  • DGActivityIndicatorView:很nice的加載指示器,有32種不要的加載指示風(fēng)格。

數(shù)據(jù)處理

數(shù)據(jù)庫(kù)

  • realm-cocoa:Realm是Core Data和SQLite的代替品,操作移動(dòng)數(shù)據(jù)庫(kù)更加直接、快捷、耐用。
  • MagicalRecord:對(duì)于使用Core Data做了非常好的封裝,用Core Data值得一試。
  • fmdb:對(duì)SQLite進(jìn)行了封裝。

存儲(chǔ)

  • YTKKeyValueStore:唐巧寫(xiě)的Key-Value方式存儲(chǔ)數(shù)據(jù)。
  • UICKeyChainStore:對(duì)Keychain的封裝,讓你使用Keychain APIsNSUserDefaults一樣簡(jiǎn)單。

轉(zhuǎn)換

  • MJExtension:李明杰寫(xiě)的一款JSON轉(zhuǎn)Model的框架。
  • Mantle:一款model層的框架,為什么唱吧iOS 6.0選擇了Mantle
  • JSONModel:一個(gè)解析服務(wù)器返回的Json數(shù)據(jù),然后快速創(chuàng)建JSON 數(shù)據(jù)模型。同Mantle類似,不過(guò)JSONModel使用較為簡(jiǎn)單,但Mantle似乎更為強(qiáng)大,看個(gè)人選擇。
  • Underscore.m:一個(gè)小型實(shí)用工具庫(kù),可以幫助開(kāi)發(fā)者更方便地處理Objective-C中常見(jiàn)的數(shù)據(jù)結(jié)構(gòu)

解析

  • JSONKit:主要用于JSON數(shù)據(jù)處理解析。
  • Ono:mattt大神寫(xiě)的一款關(guān)于處理XMLHTML的框
    架。
  • hpple:解析XML/HTML的框架。

Categories

  • iOS-Categories:非常有用的Objective-C Categories,涉及到FoundationUIKitCoreDataQuartCoreCoreLocationMapKit等。
  • octave:UI 操作音效,UIControl的category。
  • LTNavigationBar:動(dòng)態(tài)改變UINavigationBar的顯示狀態(tài),類似手機(jī)QQ中QQ空間的導(dǎo)航效果。
  • FlatUIKit:扁平化的UI視圖集合。

UIKit

UI視圖

日歷視圖

圖表、繪圖

  • PNChart:周凱文寫(xiě)的一款很好的圖表框架。
  • core-plot:也是一款2D的繪圖框架。

引導(dǎo)頁(yè)、狀態(tài)頁(yè)

  • Onboard:只需少量代碼就可創(chuàng)建非常nice的引導(dǎo)頁(yè)。
  • DZNEmptyDataSet:沒(méi)有請(qǐng)求到網(wǎng)絡(luò)數(shù)據(jù)或者請(qǐng)求失敗的視圖展示,就好像web的404頁(yè)面一樣。

View

  • CRPixellatedView:UIView的子類,做像素化的動(dòng)畫(huà)處理。
  • SwipeView:水平分頁(yè)滑動(dòng)視圖。

Alert、Sheet

  • MMPopupView:高度可定制的alert、sheet。
  • TSMessages:提示信息、通知信息控件。
  • RKDropdownAlert:基于facebook的app Slingshot的alert,靈感取自于SVProgressHUD的一個(gè)提示框架。
  • SCLAlertView:具有非常贊的動(dòng)畫(huà)的Alert View
  • CMPopTipView:是一個(gè)開(kāi)源的泡泡風(fēng)格文本提示框控件。

TableView

  • FXForms:非常容易創(chuàng)建table數(shù)據(jù)形式,用于設(shè)置頁(yè)面非常理想。
  • VVeboTableViewDemo:VVebo剝離的TableView繪制,對(duì)TableView進(jìn)行流暢度優(yōu)化。
  • RETableViewManager:數(shù)據(jù)驅(qū)動(dòng)tableView進(jìn)行內(nèi)容管理。

TextView

  • SlackTextViewController:文本輸入視圖,對(duì)于消息編輯非常有用,類似于微信發(fā)送消息的那個(gè)輸入框。

Menu

  • RESideMenu:左右側(cè)視圖視差效果menu,不過(guò)很久沒(méi)有commit了。

  • AwesomeMenu:Path2.0里面的menu效果。

Button

  • VBFPopFlatButton:使用pop做的不同狀態(tài)具有平緩過(guò)渡動(dòng)畫(huà)效果的扁平化button。
  • BEMCheckBox:一款可自定義的具有非常nice動(dòng)畫(huà)效果的checkbox

TextField

Label

Font、Color

  • FontAwesomeKit:字體框架,支持Font-AwesomeFoundation iconsZocialionicons
  • Chameleon:類似顏色板一樣,具有很多超贊的顏色可供直接使用。
  • Colours:和Chameleon功能類似。
  • DKNightVersion:對(duì)顏色的管理,融合了白天和黑夜的主題效果。

Cell

CoreText、AttributeText

  • DTCoreText:允許使用HTML代碼的Core Text框架。
  • YYText:非常強(qiáng)大的富文本顯示和編輯框架。(推薦)

Image

  • GPUImage:GPUImage 是iOS下一個(gè)開(kāi)源的基于GPU的圖像處理庫(kù),提供各種各樣的圖像處理濾鏡,并且支持照相機(jī)和攝像機(jī)的實(shí)時(shí)濾鏡。

圖片加載、緩存

  • SDWebImage:異步圖片下載處理,支持緩存,我相信大部分開(kāi)發(fā)者都用過(guò)。
  • PINRemoteImage:對(duì)圖片下載、加載、緩存的管理,線程安全且快速,對(duì)于網(wǎng)絡(luò)圖片具有很好的表現(xiàn)力。
  • Haneke:輕量的圖片緩存框架。
  • AsyncImageView:異步圖片處理的一個(gè)簡(jiǎn)單Extension。
  • Concorde:下載和解碼JPEGs格式圖片。

GIF

Camera、視頻

  • XCDYouTubeKit:YouTube視頻播放框架。
  • ZFPlayer:基于AVPlayer支持橫屏、豎屏的視頻播放器。
  • kxmovie:使用ffmpeg制作的一款視頻播放器。
  • PBJVision:一款camera的引擎,支持錄屏慢動(dòng)作獲取圖片等特性,且camera可自定義。
  • MWPhotoBrowser:一款優(yōu)雅的圖片、視頻資源瀏覽器。

瀑布流

Objective-C與JS交互

  • JSPatch:JSPath充當(dāng)Objective-C
    Javascript 交互的橋梁。
  • WebViewJavascriptBridge:Objective-C
    Javascript 交互通信過(guò)程中,和JSPath一樣充當(dāng)橋梁。

地圖、地理位置信息、LBS

  • LocationManager:非常容易獲取設(shè)備當(dāng)前地理位置信息的框架。

ReactiveCocoa

Runtime

  • RuntimeBrowser:有關(guān)運(yùn)行時(shí)操作的工具,你有權(quán)使用運(yùn)行時(shí)所有的類。
  • iOS-Runtime-Headers:使用RuntimeBrowser導(dǎo)出的iOSframework的頭文件。

Block

  • BlocksKit :對(duì)于使用Block來(lái)說(shuō)更加方便、高效,不過(guò)好久沒(méi)有commit了。

KVO

  • KVOController:facebook出品,它是一個(gè)簡(jiǎn)單安全的 KVO工具,構(gòu)建了一個(gè)基于 Cocoa 的 time-tested key-value 監(jiān)控實(shí)現(xiàn),提供簡(jiǎn)單方便、線程安全的 API。

AOP、Method Swizzling

  • Aspects:一個(gè)簡(jiǎn)潔高效的用于使iOS支持AOP面向切面編程的庫(kù)。

路由器、Deep Link

測(cè)試

  • Kiwi:iOS的BDD框架。
  • specta:輕量的TDD/BDD測(cè)試框架。
  • KIF:全稱是Keep It Functional,來(lái)自Square,是一款專為iOS設(shè)計(jì)的移動(dòng)應(yīng)用測(cè)試框架

日志

  • CocoaLumberjack:是Mac和iOS上一個(gè)集快捷、簡(jiǎn)單、強(qiáng)大和靈活于一身的日志框架。

工具、Xcode插件

工具

  • Alcatraz:Xcode插件管理神器,當(dāng)然還有些其他的包管理功能。
  • FLEX:一款很好的調(diào)試工具,同樣是Flipboard出品。
  • PonyDebugger:原生app使用Chrome開(kāi)發(fā)工具進(jìn)行遠(yuǎn)程的網(wǎng)路和數(shù)據(jù)debug
  • xctool:facebook出品的取代Apple's xcodebuild,讓編譯和測(cè)試更簡(jiǎn)單。
  • Tweaks:facebook出品的快速原型開(kāi)發(fā)工具,能在應(yīng)用上實(shí)時(shí)調(diào)整參數(shù)并測(cè)試效果。
  • EarlGrey:google出品的UI自動(dòng)測(cè)試工具。
  • GitUp:用于Git交互。

插件

  • injectionforxcode:運(yùn)行中的程序,然后在Xcode中動(dòng)態(tài)插入代碼,你可以實(shí)時(shí)看到編譯器中的變動(dòng)。
  • CATweaker:創(chuàng)建CAMediaTimingFunction曲線的一個(gè)幫助工具,該插件可以實(shí)時(shí)觀看你創(chuàng)建的曲線,而且可調(diào)整。
  • KSImageNamed-Xcode:自動(dòng)call imageNamed:獲取圖片資源名字填充,且相應(yīng)圖片在左側(cè)可見(jiàn)。
  • XAlign:自動(dòng)代碼對(duì)齊插件。
  • VVDocumenter-Xcode:王巍寫(xiě)的一款編寫(xiě)文本的插件,用于注釋非常方便。
  • SCXcodeSwitchExpander:自動(dòng)填充Switch語(yǔ)句的枚舉case值。
  • RTImageAssets:給定一張@3x的圖片,自動(dòng)生成其他像素的圖片,也可以給定一張@2x的圖自動(dòng)片生成@3x的圖片。
  • ESJsonFormat-Xcode:將JSON格式化輸出為模型的屬性插件。
  • FuzzyAutocompletePlugin:代碼索引、自動(dòng)補(bǔ)全代碼的插件。
  • ColorSense-for-Xcode:主要針對(duì)RGB顏色值,可實(shí)時(shí)查看RGB顏色。

API、SDK

其他

  • PKRevealController:是一個(gè)iOS平臺(tái)上的視圖控制器集合,通過(guò)展現(xiàn)多個(gè)視圖控制器來(lái)進(jìn)行控制器之間的切換,設(shè)置簡(jiǎn)單,高度靈活。
  • nimbus:旨在落實(shí)Three20,但是提供文檔放在第一位,其次才是功能。
  • Chameleon:就像是一個(gè)港口,有iPhoneiPadMac幾個(gè)分支,用于處理不同平臺(tái)。
  • iOS-Artwork-Extractor:可以把所有圖片和emoji符號(hào)提取出來(lái),并導(dǎo)入png文件。
  • Bolts-ObjC:集成多任務(wù)處理的,和GCD、NSOperation的作用有點(diǎn)類似。

資料

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 230,247評(píng)論 6 543
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 99,520評(píng)論 3 429
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人,你說(shuō)我怎么就攤上這事。” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 178,362評(píng)論 0 383
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我,道長(zhǎng),這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 63,805評(píng)論 1 317
  • 正文 為了忘掉前任,我火速辦了婚禮,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 72,541評(píng)論 6 412
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 55,896評(píng)論 1 328
  • 那天,我揣著相機(jī)與錄音,去河邊找鬼。 笑死,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,887評(píng)論 3 447
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 43,062評(píng)論 0 290
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 49,608評(píng)論 1 336
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 41,356評(píng)論 3 358
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 43,555評(píng)論 1 374
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 39,077評(píng)論 5 364
  • 正文 年R本政府宣布,位于F島的核電站,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 44,769評(píng)論 3 349
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 35,175評(píng)論 0 28
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 36,489評(píng)論 1 295
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 52,289評(píng)論 3 400
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 48,516評(píng)論 2 379

推薦閱讀更多精彩內(nèi)容