1. 程式人生 > >GitHub第三方資源庫整理(Swift篇)

GitHub第三方資源庫整理(Swift篇)

之前做了OC的整理,這一篇是Swift的第三方資源庫整理。同樣的,有好的專案我就會加進來,並把更新說明寫在文末。

網路

Alamofire:http網路請求事件處理的框架。

Moya:這是一個基於Alamofire的更高層網路請求封裝抽象層。

綜合

Perfect:swift的伺服器端開發框架(針對於移動後端開發、網站和web應用程式開發)。

RxSwift:
函式響應式程式設計框架,是ReactiveX的swift版本,可以簡化非同步操作和事件/資料流。

Dollar:無需擴充套件任何內建物件就為Swift語言提供有效的函數語言程式設計輔助方法,類似於Lo-Dash或JavaScript中的Underscore。

MonkeyKing:社會化分享框架,支援分享texturlimageaudiofileWeChatQQAlipayWeibo

OAuthSwift:國外主流網站OAuth授權庫。

R.swift:以一種優雅安全的方式使用資原始檔。

Whisper:使用簡單、功能實用的訊息及應用通知元件。

Surge:mattt寫的效能加速框架,為數字訊號處理和影象處理提供高效能。

Animation

EasyAnimation:主要應用於UIView.animateWithDuration(_:, animations:...)

IBAnimatable:主要使用於Interface Builder

,不需要一行程式碼就可打造擁有炫酷動畫效果的UI介面。

Advance:可應用於 iOS、 tvOS、 and OS X的動畫框架。

PeekPop:使用3D touch 被引用的兩個動畫特性peekpop

Transition

StarWars.iOS:很炫酷的轉場動畫效果,檢視碎片化掉落。

其他動畫

NumberMorphView:label數字變形過渡動畫,用於金額數字變動或者時間上面會非常nice!

資料處理

SQLite.swift:用swift封裝的sqlite 3操作框架。

解析、轉換

SwiftyJSON:很好、很方便地處理JSON資料。

Argo

:函式式json解析轉換庫。

ObjectMapper:把json物件對映為model物件。

儲存

SwiftyUserDefaults:對NSUserDefaults的封裝,讓NSUserDefaults使用更簡單。

其他

SwiftString:關於swift中string處理的擴充套件,有between(left, right)camelize()capitalize()count(string)decodeHTML()contains(substring)等。

ReSwift:單向資料流處理,靈感來自於redux

Category、Extension

ExSwift: 包含一組標準型別和類的Swift擴充套件。

載入指示、HUD

FillableLoaders:自定義的進度載入器,有wavesplainspikerounded等效果。

Refresh

圖表、繪畫

Charts:非常好的圖表框架,類似於MPAndroidChart

AutoLayout

Neon:一款關於UI自動佈局的框架。

TZStackView:UISatckView的代替品,支援iOS7+。

UIKit

Chatto:輕量級構建聊天應用的框架。

Koloda:卡片檢視,而且滑動檢視有滑動卡片一樣的動畫效果。

MaterialKit:關於Material design做的一系列UI元件。

Material:集AnimationUI與一身,還有IconColor等元素,使用這個庫就可以打造一個漂亮的UI介面並具有優雅的動畫效果。

引導頁、新手教程

Tab Bar

Animated Tab BarRamotion出品,給tabbar items各單元新增動畫效果。

Adaptive Tab Bar:同樣的Ramotion出品,提供適合的Tab Bar。

Table View

Eureka:通過詳細的對映,建立動態的table-view forms。

folding-cell:摺疊的cell效果,動畫很nice。

Alert、Sheet

Button

DOFavoriteButton:有動畫效果的button,適用於收藏喜歡點贊等。

hamburger-button: hamburger button,動畫過渡不錯。

Switch

paper-switch:Ramotion出品turned on覆蓋父檢視的動畫效果。

Label

ActiveLabel.swift:支援HashtagsMentionsLinks響應事件處理。

TextField

PhoneNumberKit:專門針對電話號碼格式做的一個輸入框,很贊。

FloatLabelFields:類似於SkyFloatingLabelTextField

TextView

Font、Color

Hue:整合color功用的庫,使用的是hex顏色值。

CoreText、AttributeText

TextAttributes:封裝NSAttributedString的框架,讓attributed strings處理更加簡單,而且是鏈式結構,看起來更加直觀。

Image

GPUImage2:GPUImage的Swift版,GPU加速imagevideo的處理。

圖片載入、快取

Gif

Gifu:載入gif的框架,表現良好。

JWAnimatedImage:載入gifapng的引擎,低記憶體和cpu消耗。

特殊效果

Filterpedia:給圖片加濾鏡效果,有很多種濾鏡。

Toucan:圖片處理,支援重設尺寸、裁剪、風格化等

Menu

FlowingMenu:很有意思的一個menu,具有平滑的彈簧效果,且手勢拖動動畫特別有趣。

CircleMenu:簡單、優雅的一款circle menu,有不錯的動畫效果。

Page Menu

PageMenu:滑動出現不同分頁的一個pagemenu,用於不同狀態分頁效果上是很好的選擇。

XLPagerTabStrip:功能同上,類似於androidPageTabStrip

測試

Quick:測試框架,支援SwiftOC,靈感來自於 RSpecSpecta, and Ginkgo

Sleipnir:BDD測試框架,靈感來自於OC寫的cedar

日誌、Log

Log:強有力的日誌框架。

工具、外掛

Carthage:包管理工具,類似於CocoaPod

SwiftLint: 一個用於檢查 Swift 程式設計風格和約定的試驗性工具。

其他

FlappySwift:遊戲flappy bird的swift實現。

OCR

Asynchronous

PromiseKit:能提供強大的 iOS 開發非同步功能,非常容易使用。

Async:關於GCD非同步分發的語法糖。

KVO

Permission

Permission:統一管理iOS系統的許可,比如相機相片定位等。

App內購

Bluetooth

App間跳轉、DeepLink

Appz:非常方便地實現App間跳轉和DeepLink。

狀態機

SwiftTask:用Swift編寫的狀態機,綜合了 Promise + progress + pause + cancel,使用SwiftState。

演算法以及資料結構

開源APP

Yep:周凱文團隊開源的一個社交APP,對於學習swift開發整個專案非常有價值。

資料、資源

iOS9-day-by-day:day-by-day系列相信很多人都很熟悉,主要介紹一些新特性、新框架的使用。

30DaysofSwift:作者Allen Wang是一名產品設計師,這是他學習swift的專案,在dribbble上看到過他的設計作品:openallen,挺不錯的。

SwiftGuide:這份指南匯集了Swift語言主流學習資源,並以開發者的視角整理編排。

awesome-swift:swift資源大合集,覆蓋了幾乎所有方面。

awesome-ios:iOS開發資源大整合,包括OCSwift,涉及到frameworkslibrariestutorialsxcode pluginscomponents等。