GitHub Top 100 的項目(iOS)

主要對當前 GitHub 排名前 100 的項目作一個簡單的簡介, 方便初學者快速瞭解到當前 Objective-C 在 GitHub 的狀況.react

Android 版本的在此: https://github.com/Freelander/Android_Data/blob/master/Android-Librarys-Top-100.mdios

本文章由 The EST Group 成員 @Aufree 整理而成, 轉載請註明出處.git

項目名稱 項目信息
1. AFNetworking 做者是 NSHipster 的博主, iOS 開發界的大神級人物, 畢業於卡內基·梅隆大學, 開源了許多牛逼的項目, 這個即是其中之一, AFNetworking 採用 NSURLConnection + NSOperation, 主要方便與服務端 API 進行數據交換, 操做簡單, 功能強大, 如今許多人都用它取代 ASIHTTPRequest
2. GPUImage 一款強大的圖片濾鏡工具, 支持自定義濾鏡, 可用來實時處理圖片和視頻流, 做者是 SonoPlot 公司的 CTO, 在很小的時候便開始接觸編程, 他在 SO 上面的回答也有不少值得閱讀, GPUImage 這個項目從 2012 年開始, 使用 OpenGL 圖形程序接口編寫, 性能很是好, 如今不少 iOS 程序員都用它來實現 iOS 的模糊效果
3. SDWebImage 做者 Olivier Poitrey 是 Dailymotion 的 CTO, 擁有多個不錯的開源項目, 此項目經常使用於對從 Web 端接受到的圖片進行緩存, 是 UIImageView 的擴展, 應用起來比較簡單
4. RestKit 主要用於 iOS 上網絡通訊, 容許與 RESTful Web 服務交互, 經常使用於處理 API, 解析 JSON, 映射響應對象等操做, 簡單易用, 方便你把全部精力都放在對數據的操做上
5. ReactiveCocoa 由 GitHub 工程師們開發的一個應用於 iOS 和 OS X 開發的函數響應式編程新框架, Matt 稱其爲 "An open source project that exemplifies this brave new era for Objective-C", 也有人說它是 Cocoa 的將來, 具體可看唐巧寫的這篇文章
6. three20 由 Facebook iOS 客戶端衍生出的一款 iPhone 框架, 內置許多豐富的功能, 有豐富的界面, 對底層的操做便捷, 爲開發者省下了不少時間, 但如今已經中止了更新, 一個 PR 把代碼刪得乾乾淨淨, 不要好奇去點開 Files changed, 我點開後該頁面直接卡死, three20 當中的一位做者建立了 Nimbus, 算是 three20 的一個替代品
7. MBProgressHUD 做者 Matej Bukovinski 是一位全棧工程師, UI/UX 設計師, 此項目是一款提示框第三方庫, 幫助開發者快速應用到項目中)
8. MagicalRecord 做者是 Coursera 的 iOS 工程師, 該項目創做靈感來自於 Ruby on Rails 的 Active Record, 主要爲方便操做 CoreData 而生, 幫助清除 CoreData 引用的代碼, 協助方便 CoreData 的工做
9. FMDB 一個對 SQLite 進行封裝的庫, 使用起來方便, 簡單
10. Mantle 做者是 GitHub 的員工, 文檔寫的很清楚: Mantle makes it easy to write a simple model layer for your Cocoa or Cocoa Touch application, 主要用來將 JSON 數據模型化爲 Model 對象, 唱吧在前段時間也改用 Mantle 了.
11. FlatUIKit 收集了不少扁平化 UI 的 iOS 組件, 方便使用
12. ASIHTTPRequest 一個輕量級的 iOS 網絡通訊類庫, 基於 CFNetwork 框架開發, 但如今已經中止更新, 多數開發者改用 AFNetworking 替代)
13. FastImageCache Path 公司出品的 iOS 庫, 做者 Mallory Paine 是蘋果前員工, 此類庫適用於在滾動時快速顯示圖像, 高速持久是其最大的特色
14. Masonry 一個輕量級的佈局框架, 同時支持 iOS 和 Mac OS X, 語法優雅, 幫助開發者快速適配不一樣分辨率的 iOS 設備
15. Shimmer Facebook 推出的一款具備閃爍效果的第三方控件, 供它旗下一款名爲 Paper 的應用使用, 安裝使用整個過程都十分簡單
16. SVProgressHUD 又一款輕量級的 iOS 第三方控件, 用於顯示任務加載時的動畫, 很是輕便, 容易使用
17. Slate 一款窗口管理應用程序, 但在兩年前就已經中止更新了
18. JSONKit 主要用於解析 JSON, 適用於 iOS6 如下環境, 自從 iOS5 開始 Apple 官方給出了 NSJSONSerialization API, 自此你們都用官方的了
19. Nimbus 做者 Jeff 曾爲 Facebook, Google 作過很多好東西, 也是 three20 的成員之一, three20 停更後, 他創造出這個框架來代替 three20, 文檔齊全
20. CocoaLumberjack 這是 Mac 和 iOS 的一款強大的日誌框架, 配置簡單, 多線程, 提供更高級的 log 功能, 可用於代替默認的 NSLog 語句
21. Facebook SDK for iOS Facebook 官方的 iOS SDK, 方便開發者集成 Facebook 的一些功能到本身的 iOS APP 裏面
22. AsyncDisplayKit Facebook 開源的一款 iOS UI 框架, Paper 用的就是該框架, 另外框架還用到了 Facebook 早期開源 Pop 動畫引擎
23. Alcatraz Alcatraz 是一款管理 Xcode 插件、模版以及顏色配置的工具, 能夠集成到 Xcode 的圖形界面中, 安裝刪除都是幾條命令的事, 很方便, 支持本身開發插件並上傳
24. ViewDeck 一款開源的 iOS 活動面板組件, 還原 Path 2.0 的側滑效果, 做者由於時間關係在兩年前中止對其更新
25. JSQMessagesViewController 優雅的 iOS 消息類庫, 經常使用於聊天應用中, 可定製性高
26. FLEX 這是 Flipboard 官方發佈的一組專門用於 iOS 開發的應用內調試工具, 開發者無需將其鏈接到 LLDB/Xcode 或其餘遠程調試服務器,支持直接在 App 中運行
27. Xctool 是 Facebook 開源的一個命令行工具,用來替代蘋果的 XcodeBuild 工具, 極大的方便了 iOS 的構建和測試, 輸出錯誤信息也比較友好, 受到許多 iOS 開發者的稱讚, 常常與其搭配使用的還有 OCUnit, Travis CI, OCLint 等測試工具
28. OpenEmu 超強的遊戲模擬器, 作遊戲開發必備, 官網作得也很不錯
29. iCarousel 做者是英國 Charcoal Design 公司的創始人, 開源領域的貢獻頗爲卓著, 這個項目就是其中之一, 這是一款能夠在 iOS 上實現旋轉木馬視圖切換效果的第三方控件, 並提供多種切換效果
30. RESideMenu 做者 Roman Efimov 是雅虎的 iOS 工程師, 這個項目實現了 iOS 上的菜單側滑效果, 創意來源於 Dribbble, 該項目支持 iOS8
321 PNChart 做者周楷雯是 90 後, 秒視的創始人, 該項目是一個帶動畫效果的圖表控件, 簡約易用, 受到很多開發者喜好
31.2PonyDebugger 由 Square 公司推出的一款優秀的 iOS 應用網絡調試工具, 用戶能夠實時看到應用程序的網絡請求, 也能夠對 iOS 應用程序的核心數據棧進行遠程調試
33. JVFloatLabeledTextField 做者是 Thumb Labs 的聯合創始人, JVFloatLabeledTextField 是 UITextField 的子類, 主要實現輸入框標籤浮動效果, 創做靈感來自 Dribbble, 已出現多個移植版本
34. SWTableViewCell UITableViewCell 的子類, 實現了左右滑動顯示信息視圖並調出按鈕
35. AwesomeMenu 做者是一位中國人, 該項目主要是使用 CoreAnimation 還原了 Path menu 的動畫效果
36. Reachability Reachablity 是用於檢測 iOS 設備網絡環境的庫
37. VVDocumenter-Xcode 做者是王巍國內著名的 iOS 開發者, 人稱喵神, 目前在日本 LINE 公司工做, 該項目幫助開發者輕鬆的生成註釋文檔, 節省了很多工做量, 贊
38. The Physical Web 由 Chrome 團隊主導的一個項目, 意在用 URL 鏈接世界, 方便用戶接受數據, 目前尚處在實驗階段
39. NewsBlur 做者獨自一我的 Samuel Clay 作出來的一款名爲 NewsBlur 的新聞閱讀器, 不少人都稱其爲 Google Reader 的替代品, 這是它的源碼
40. Cocos2D-SpriteBuilder 一個可用於在 iOS, Mac 和 Android 上製做 2D 遊戲或其它圖形/交互應用的框架, 以前的項目名稱爲 Cocos Swift, 目前該項目在 GitHub 上更新較爲頻繁
41. TTTAttributedLabel UILabel 的替代品, 使 iOS 上的 Label 功能更加豐富, 可支持連接植入等功能
42. CocoaAsyncSocket 一個功能強大、簡單易用的異步 socket 通信類庫, 支持 TCP 和 UDP 協議, 可用於 Mac 和 iOS 設備上, 做者 Robbie Hanson 是 Deusty 的首席軟件工程師
43. TapkuLibrary 做者是 Devin Ross, 這是在 iOS 上一款功能強大的 UI 效果類庫, 能夠實現多種酷炫的效果, 目前仍在更新中
44. Canvas 無需編碼實現牛逼的動畫效果的庫, 連設計師均可以快速上手
45. SocketRocket Square 公司開源的一個 WebSocket 客戶端, 穩定而且易用, 作實時應用常會用到, 受廣大開發者喜好
46. ECSlidingViewController 一個視圖控制器容器, 將子視圖處理成兩層, 經過滑動來處理層的切換, 創做靈感來自 Facebook 和 Path的 App, 做者是 Cleveland 的員工
47. Json Framework 用於解析 JSON 數據的一個框架, 可是在 iOS5 以上版本大多數人都選擇使用 NSJSONSerialization 來解析 JSON, 該項目如今在 GitHub 上也幾乎沒怎麼更新了
48. Tweaks Facebook 開源的一款工具, 旨在幫助 iOS 開發者更快的迭代應用, 方便用戶動態的調整參數, 是的, Paper 這個項目也用到了
49. realm-cocoa Realm-Cocoa 是 Realm 公司推出一款移動端數據庫, 能夠運行在手機、平板和可穿戴設備之上, 其目標是取代 CoreData 和 SQLite 數據庫
50. BlocksKit 一個開源的與 Cocoa 緊密集合的基礎性框架
51. Appirater 一款用於提醒用戶給你的 App 打分的工具
52. KIF Square 出品的一個開源的用戶界面測試框架, 極大的簡化了 iOS 開發者的 UI 測試流程
53. SlackTextViewController Slack 推出的一款具備文字輸入框高度自適應, 自動輸入, 複製單元格內容等功能的解決方案
54. JazzHands IFTTT 開源的一個簡單易用的關鍵幀基礎動畫框架, 可經過手勢、scroll views, KVO, ReactiveCocoa 等方式來控制動畫
55. Bolts-iOS Bolts 是一個 Parse 和 Facebook 在內部使用的底層庫, 方便移動開發
56. Spectacle 一款易用的 OS X 窗口分屏操做快捷鍵工具, 這是其源代碼
57. nui 方便樣式化 iOS 應用中的 UI 元素, 可在短期內樣式化整個應用, 類 CSS 原理
58. Induction Induction 是一款用於理解數據關係的管理工具, 這是其程序代碼
59. JSONModel 一個能迅速解析服務器返回的 Json 數據的庫, 方便數據的類型轉換
60. DTCoreText 一個開源的 iOS 富文本組件, 它能夠解析 HTML 與 CSS 並最終用 CoreText 繪製出來, 一般用於在一些須要顯示富文本的場景下代替低性能的 UIWebView
61. Popping 基於 Facebook Pop 引擎的 iOS 動畫庫, 集合了不少動畫效果
62. TSMessages 一個用來彈出顯示警告和通知的輕量級庫, 樣式豐富, 簡單易用
63. KVOController 一個簡單安全的 KVO(Key-value Observing, 鍵-值 觀察)工具, 提供簡單方便、線程安全的API, Facebook 的開源項目之一
64. MWPhotoBrowser 一款簡單的 iOS 照片瀏覽控件
65. MMDrawerController 一個輕量級, 易於使用的側邊抽屜導航 iOS 控件
66. QuickDialog 用於快速建立複雜的 iOS 表單, 自定義了 UITableViewCell, TableView 的樣式
67. SVPullToRefresh 一款只需一行代碼即可集成上拉刷新和下拉加載的組件
68. cheddar-ios Cheddar 是一款簡單易用的日程管理軟件, 這是其早期版本的開源代碼, 該項目已中止維護
69. XVim 一款在 Xcode 上實現了 Vim 功能的插件
70. EGOTableViewPullRefresh 一款提供下拉刷新的控件, 最後更新時間是一年前
71. iOS-boilerplate iOS 應用程序的基礎模板, 使用該模板能夠省掉許多項目初始編碼的工做, 內置很是多豐富的功能, 現已經中止維護
72. JASidePanels 一個 UIViewController 容器, 靈感來自 Facebook 和 Path 2.0 應用的菜單, 實現了左右側滑的操做
73. FormatterKit 收集了不少構思優秀的 NSFormatter 子類
74. MSDynamicsDrawerViewController 實現了具備動態彈性效果的抽屜式側邊導航欄, 效果豐富, 可定製性強
75. idev-recipes iDevRecipes 博客的代碼, 演示如何實現一些有趣的控件, 該項目在兩年前(2013)中止了更新
76. XMPPFramework 一個基於 RFC-3920 實現, 支持多線程和線程保護, 同時通用於全部的 iOS 和 Mac OS 開發設備的通訊框架.
77. MacGap1 一款能夠將 HTML/CSS/JS 網絡應用打包成原生 Mac App 的工具
78. FXBlurView iOS 模糊背景類庫, 能夠方便的根據底層顯示的狀態生成模糊效果
79. iOS7-Sampler 整合演示了多個具備 iOS7 新特性的的項目, 提供了很是多的例子參考
80. PromiseKit 提供強大的 iOS 開發異步功能, 是 Promises 的實現, 受到廣大開發者的追捧
81. Origami 此爲 Facebook 推出的 Quartz Composer 的一個開源插件, 由其設計團隊花費了 9 個月打造而成, 目的是爲方便設計師快速構建原型, 以零代碼完成複雜動畫的合成和測試, 堪稱神器
82. NSLogger 一款強大的日誌分析工具, 具備大窗口查看 Log, 自定義日誌等級等功能
83. KSImageNamed-Xcode 一款對 UIImage 的 imageNamed 提供自動補全功能的插件, 很是方便
84. PureLayout 一個簡單卻強大的 AutoLayout API 庫, 兼容了 Objective-C 和 Swift, 擴展了 UIView/NSView, NSArray, 和 NSLayoutConstraint
85. AppleDoc 一款 Objective-C 文檔生成工具, 生成的文檔風格保持與 Apple 官方的一致, 極大的方便了 Xcode 識別本身寫的 API 文檔, 安裝也是十分的簡單
86. iTerm2 iTerm2 被很多程序員稱讚爲 Mac 下最好用的終端, 這是其源代碼, 配合 oh-my-zsh 使用效果更佳
87. Kiwi 一個行爲驅動開發測試框架, 適用於 iOS 平臺, 旨在爲開發者提供一個簡單配置即可使用的 BDD 庫
88. terminal-notifier 一款命令行工具, 用來給 Mac OS X 用戶發送通知
89. MacDown Mac OS X 下的一款開源的 Markdown 編輯器, 創意來自與 Mou, 使用 brew cask 便可完成安裝
90. TwUI Twitter 開源的一個支持硬件加速的 Mac 的 UI 框架, 最後一次的更新時間是在 3 年前(2012)
91. PaperFold for iOS 實現了相似摺紙效果的視圖切換, 可從不一樣方向進行切換, 該項目已經許久未更新
92. Reader 一款開源的 iOS PDF 閱讀器, 附帶書籤, 列綱要等功能
93. WebViewJavascriptBridge 一個方便使用 Objective-C 與 JavaScript 進行通訊的第三方庫, 支持消息發送, 接收, 消息處理器的註冊與調用以及設置消息處理的回調
94. iOS8-Sampler iOSX-Sampler 系列之一, 整合演示了多個具備 iOS8 新特性的的項目, 提供了很是多的例子參考
95. CocoaHTTPServer 一個用於 Mac OS X 或 iOS 應用的輕量級、可嵌入的HTTP 服務器框架, 方便開發者在應用中嵌入一個 HTTP 服務器
96. Kod Mac OS X 上一款專爲程序員打造的編輯器, 這是其開源代碼, 惋惜的是做者在 2011 年中止了維護
97. TPKeyboardAvoiding 下拉鍵盤在 iOS 移動文本字段的通用解決方案, 可以自動處理鍵盤彈出後出現遮擋到文本輸入框的問題
98. MKNetworkKit 一個輕量級網絡請求框架, 徹底基於 ARC, 僅有兩個類, 具備自主操做多個網絡請求, 更加準確的顯示網絡活動指標等優勢
99. PKRevealController 一個 iOS 平臺上的視圖控制器集合, 經過展示多個視圖控制器來進行控制器之間的切換. 設置簡單, 高度靈活
00. AQGridView 一個命令行工具, 經過項目裏的 .xcdatamodel 文件, 能夠爲每一個 entity 生成兩個類, 方便 CoreData 的使用
相關文章
相關標籤/搜索