Files
awesome-awesomeness/terminal/swift5
2024-04-20 19:22:54 +02:00

42 KiB

Awesome Swift
A curated list of awesome Swift frameworks, libraries and software. Inspired by awesome-php (https://github.com/ziadoz/awesome-php).
 
- Awesome Swift (#awesome-swift)
- **UI** (#ui)
- **Files** (#files)
- **JSON/XML Manipulation** (#jsonxml-manipulation)
- **Databases** (#databases)
- **Testing** (#testing)
- **Documentation** (#documentation)
- **Events** (#events)
- **Queue** (#queue)
- **HTTP** (#http)
- **Caching** (#caching)
- **Security** (#security)
- **Logging** (#logging)
- **Command Line** (#command-line)
- **Audio** (#audio)
- **Third Party APIs** (#third-party-apis)
- **Extensions** (#extensions)
- **Misc** (#misc)
- Resources (#resources)
- **Swift Books** (#swift-books)
- **Swift Videos** (#swift-videos)
- **Swift Playgrounds** (#swift-playgrounds)
- Other Awesome Lists (#other-awesome-lists)
- Contributing (#contributing)
 
UI
Sejima (https://github.com/MoveUpwards/Sejima) - User Interface Library components for iOS.
Eureka (https://github.com/xmartlabs/Eureka) - Elegant iOS Forms in pure Swift.
XLActionController (https://github.com/xmartlabs/XLActionController) - Fully customizable and extensible action sheet controller written in Swift.
FlourishUI (https://github.com/unicorn/FlourishUI) - Framework for modals, color exensions and buttons.
SwiftColors (https://github.com/thii/SwiftColors) - HEX color handling as an extension for UIColor.
FontAwesome.swift (https://github.com/thii/FontAwesome.swift) - Use FontAwesome in your Swift projects.
SwiftOverlays (https://github.com/peterprokop/SwiftOverlays) - GUI library for displaying various popups and notifications.
ios-charts (https://github.com/danielgindi/ios-charts) - A powerful chart / graph framework, the iOS equivalent to MPAndroidChart (https://github.com/PhilJay/MPAndroidChart).
TagCellLayout (https://github.com/riteshhgupta/TagCellLayout) - UICollectionView layout for Tags with Left, Center & Right alignments.
TagListView (https://github.com/xhacker/TagListView) - Simple but highly customizable iOS tag list view.
SwiftyButton (https://github.com/TakeScoop/SwiftyButton) - Simple and customizable button in Swift
Swiftstraints (https://github.com/Skyvive/Swiftstraints) - Powerful auto-layout framework that lets you write constraints in one line of code.
PagingMenuController (https://github.com/kitasuke/PagingMenuController) - Paging view controller with customizable menu in Swift
GaugeKit (https://github.com/skywinder/GaugeKit) - Customizable gauges. Easy reproduce Apple's style gauges.
Hokusai (https://github.com/ytakzk/Hokusai) - A library for a cool bouncy action sheet
LNRSimpleNotifications (https://github.com/LISNR/LNRSimpleNotifications) - Simple Swift in-app notifications
GoogleMaterialIconFont (https://github.com/kitasuke/GoogleMaterialIconFont) - Google Material Icon Font for Swift and ObjC.
CozyLoadingActivity (https://github.com/goktugyil/CozyLoadingActivity) - Lightweight loading activity HUD
VideoSplash (https://github.com/toygar/VideoSplash.git) - Video based UIViewController
EZAlertController (https://github.com/thellimist/EZAlertController) - Easy Swift UIAlertController
EZSwipeController (https://github.com/goktugyil/EZSwipeController)- :point_up_2: UIPageViewController like Snapchat/Tinder/iOS Main Pages
ImagePicker (https://github.com/hyperoslo/ImagePicker) - A nicely designed and super easy to use ImagePicker. :camera:
Notie (https://github.com/thii/Notie) - In-app notification in Swift, with customizable buttons and input text field.
Whisper (https://github.com/hyperoslo/Whisper) - Break the silence of your UI, whispering, shouting or whistling at it
HTYTextField (https://github.com/hanton/HTYTextField) - A UITextField with bouncy placeholder in Swift.
SwiftPasscodeLock (https://github.com/velikanov/SwiftPasscodeLock) - An iOS passcode lock with TouchID authentication written in Swift.
SlideMenuControllerSwift (https://github.com/dekatotoro/SlideMenuControllerSwift) - iOS Slide Menu View based on Google+, iQON, Feedly, Ameba iOS app. It is written in pure swift.
Hue (https://github.com/hyperoslo/Hue) - Hue is the all-in-one coloring utility that you'll ever need.
SAHistoryNavigationViewController
(https://github.com/szk-atmosphere/SAHistoryNavigationViewController) - SAHistoryNavigationViewController realizes iOS task manager like UI in UINavigationContoller.
WobbleView (https://github.com/inFullMobile/WobbleView) - Implementation of wobble effect for any view in app.
SimpleAlert (https://github.com/KyoheiG3/SimpleAlert) - Customizable simple Alert and simple ActionSheet for Swift
Interactive Side Menu (https://github.com/handsomecode/InteractiveSideMenu) - Customizable iOS Interactive Side Menu written in Swift 3.0.
NFDownloadButton (https://github.com/LeonardoCardoso/NFDownloadButton) - Revamped Download Button.
EFQRCode (https://github.com/EyreFree/EFQRCode) - A better way to operate quick response code in Swift.
SendIndicator (https://github.com/LeonardoCardoso/SendIndicator) - Yet another task indicator.
SectionedSlider (https://github.com/LeonardoCardoso/SectionedSlider) - Control Center Slider.
Cupcake (https://github.com/nerdycat/Cupcake) - An easy way to create and layout UI components for iOS.
PinLayout (https://github.com/mirego/PinLayout) - Extremely Fast views layouting without auto layout. No magic, pure code, full control and blazing fast. Concise syntax, intuitive, readable
& chainable.
Gemini (https://github.com/shoheiyokoyama/Gemini) - Gemini is rich scroll based animation framework for iOS, written in Swift.
Hero (https://github.com/HeroTransitions/Hero) - Hero is a library for building iOS view controller transitions.
CrispyCalendar (https://github.com/CleverPumpkin/CrispyCalendar) - CrispyCalendar is the calendar UI framework.
Ribbon (https://github.com/chriszielinski/Ribbon) - 🎀 A simple cross-platform toolbar/custom input accessory view library for iOS & macOS.
 
Files
 
FileKit (https://github.com/nvzqz/FileKit/) - Simple and expressive file management in Swift.
 
JSON/XML Manipulation
 
SwiftyJSON (https://github.com/SwiftyJSON/SwiftyJSON) - The better way to deal with JSON data in Swift.
json-swift (https://github.com/owensd/json-swift) - A basic library for working with JSON in Swift.
Argo (https://github.com/thoughtbot/Argo) - JSON parsing library for Swift, inspired by Aeson.
ObjectMapper (https://github.com/Hearst-DD/ObjectMapper) - JSON Object mapping written in Swift.
Alamofire-SwiftyJSON (https://github.com/SwiftyJSON/Alamofire-SwiftyJSON) - Alamofire extension for serialize NSData to SwiftyJSON.
SWXMLHash (https://github.com/drmohundro/SWXMLHash) - Simple XML parsing in Swift.
AEXML (https://github.com/tadija/AEXML) - Simple and lightweight XML parser for iOS written in Swift.
Starscream (https://github.com/daltoniam/starscream) - WebSockets Library
JASON (https://github.com/delba/JASON) - JSON parsing with outstanding performances and convenient operators.
Fuzi (https://github.com/cezheng/Fuzi) - A fast & lightweight XML/HTML parser with XPath & CSS support in Swift 2.
Tailor (https://github.com/zenangst/Tailor) - A super fast & convenient object mapper tailored for your needs.
SwiftyJSONAccelerator (https://github.com/insanoid/SwiftyJSONAccelerator) - Generate Swift 5 model files from JSON with Codeable support.
 
Databases
Databases implemented in Swift.
Realm (https://github.com/realm/realm-cocoa) - A mobile database that runs directly inside phones, tablets or wearables.
SQLite.swift (https://github.com/stephencelis/SQLite.swift) - A pure Swift framework wrapping SQLite3. Small. Simple. Safe.
SwiftData (https://github.com/ryanfowler/SwiftData) - A simple and effective wrapper around the SQLite3 C API written completely in Swift.
Squeal (https://github.com/nerdyc/Squeal) - A Swift wrapper for SQLite databases.
SQLiteDB (https://github.com/FahimF/SQLiteDB) - Basic SQLite wrapper for Swift.
SwiftMongoDB (https://github.com/Danappelxx/SwiftMongoDB) - A Swift driver for MongoDB.
ModelAssistant (https://github.com/ssamadgh/ModelAssistant) - Elegant library to manage the interactions between view and model in Swift.
PostgresClientKit (https://github.com/codewinsdotcom/PostgresClientKit) - A PostgreSQL client library for Swift. Does not require libpq.
 
Testing
Libraries for testing codebases and generating test data.
 
Quick (https://github.com/Quick/Quick) - A behavior-driven development test framework for Swift and Objective-C.
Sleipnir (https://github.com/railsware/Sleipnir) - A BDD-style framework for Swift.
Nimble (https://github.com/Quick/Nimble) - A Matcher Framework for Swift.
Fakery (https://github.com/vadymmarkov/Fakery) - Swift fake data generator.
SwiftRandom (https://github.com/thellimist/SwiftRandom) - Generator for random data.
MockFive (https://github.com/DeliciousRaspberryPi/MockFive) - A mocking framework for Swift with runtime function stubbing.
 
Documentation
Libraries for generating documentation files.
 
jazzy (https://github.com/realm/jazzy) - A soulful way to generate docs for Swift & Objective-C
 
Events
Libraries for one-to-many communications.
 
Caravel (https://github.com/coshx/caravel) - A Swift event bus for UIWebView and JS
EmitterKit (https://github.com/aleclarson/emitter-kit) - An elegant event framework built in Swift
Swift-Custom-Events
(https://github.com/StephenHaney/Swift-Custom-Events) - A very simple way to implement Backbone.js style custom event listeners and triggering in Swift for iOS development.
Kugel (https://github.com/TakeScoop/Kugel) - A glorious Swift wrapper around NSNotificationCenter
 
Queue
Libraries for working with event and task queues.
 
TaskQueue (https://github.com/icanzilb/TaskQueue) - A Task Queue Class developed in Swift.
Dispatcher (https://github.com/aleclarson/dispatcher) - Queues, timers, and task groups in Swift
GCDKit (https://github.com/JohnEstropia/GCDKit) - Grand Central Dispatch simplified with Swift.
 
HTTP
Swift libraries and wrappers for HTTP clients.
 
Alamofire (https://github.com/Alamofire/Alamofire) - an HTTP networking library written in Swift.
ReactiveAPI (https://github.com/sky-uk/ReactiveAPI) - Write clean, concise and declarative network code relying on URLSession, with the power of RxSwift. Inspired by Retrofit.
SwiftHTTP (https://github.com/daltoniam/SwiftHTTP) - Thin wrapper around NSURLSession in swift. Simplifies HTTP requests.
Net (https://github.com/nghialv/Net) - HttpRequest wrapper written in Swift.
OAuthSwift (https://github.com/dongri/OAuthSwift) - Swift based OAuth library for iOS
Moya (https://github.com/ashfurrow/Moya) - Network abstraction layer written in Swift
Just (https://github.com/JustHTTP/Just) - HTTP for Humans (python-requests style HTTP library)
SocketIO-Kit (https://github.com/ricardopereira/SocketIO-Kit) - Socket.io iOS/OSX Client compatible with v1.0 and later
SwiftWebSocket (https://github.com/tidwall/SwiftWebSocket) - High performance WebSocket client library for Swift.
AeroGear IOS Http (https://github.com/aerogear/aerogear-ios-http/) - is a thin layer to take care of your http requests working with NSURLSession.
Nuke (https://github.com/kean/Nuke) - Advanced framework for loading and caching images
Siesta (https://bustoutsolutions.github.io/siesta/) - Ends state headaches by providing a resource-centric alternative to the familiar request-centric approach to HTTP.
Taylor (https://github.com/izqui/Taylor) - a web server library in Swift.
Perfect (https://github.com/PerfectlySoft/Perfect) - a web framework tayin Swift.
Swifter (https://github.com/glock45/swifter) - an HTTP server engine in Swift.
Kingfisher (https://github.com/onevcat/Kingfisher) - A lightweight and pure Swift implemented library for downloading and caching image from the web.
 
Caching
Libraries for caching.
 
HanekeSwift (https://github.com/Haneke/HanekeSwift) - A lightweight generic cache for iOS written in Swift with extra love for images.
Carlos (https://github.com/WeltN24/Carlos) - A simple but flexible cache for iOS and WatchOS 2 apps, written in Swift.
 
Security
Libraries for generating secure random numbers, encrypting data and scanning for vulnerabilities.
 
CryptoSwift (https://github.com/krzyzanowskim/CryptoSwift) - Crypto related functions and helpers for Swift implemented in Swift programming language.
SHA256-Swift (https://github.com/CryptoCoinSwift/SHA256-Swift) - Swift framework wrapping CommonCrypto's SHA256 methods.
SwiftSSL (https://github.com/SwiftP2P/SwiftSSL) - An Elegant crypto toolkit in Swift.
SwiftyRSA (https://github.com/TakeScoop/SwiftyRSA) - RSA public/private key encryption in Swift
 
Logging
Libraries for generating and working with log files.
 
QorumLogs (https://github.com/goktugyil/QorumLogs) — Swift Logging Utility for Xcode & Google Docs.
CleanroomLogger (https://github.com/emaloney/CleanroomLogger) - A configurable and extensible pure Swift logging API that is simple, lightweight and performant.
XCGLogger (https://github.com/DaveWoodCom/XCGLogger) - A debug log framework for use in Swift projects.
Swell (https://github.com/hubertr/Swell) - A logging utility for Swift and Objective C.
Log (https://github.com/delba/Log) - A logging tool with built-in themes, formatters, and a nice API to define your owns.
NSLogger (https://github.com/fpillet/NSLogger) - A high perfomance logging utility which displays traces emitted by client applications running on Mac OS X, iOS and Android.
 
Command Line
Libraries for creating command line applications.
CommandCougar (https://github.com/surfandneptune/CommandCougar) - An elegant pure Swift library for building command line applications.
 
Audio
AudioKit (https://github.com/audiokit/AudioKit) - Audio synthesis, processing, and analysis platform
MusicKit (https://github.com/benzguo/MusicKit) - Framework and DSL for creating, analyzing, and transforming music in Swift
WebMIDIKit (https://github.com/adamnemecek/WebMIDIKit/) - Simplest MIDI Swift framework
 
Third Party APIs
Libraries for accessing third party APIs.
 
GooglePlacesAutocomplete (https://github.com/watsonbox/ios_google_places_autocomplete) - Simple Google Places address entry for iOS.
Swifter (https://github.com/mattdonnelly/Swifter) - A Twitter framework for iOS & OS X written in Swift
SwiftIB (https://github.com/kcome/SwiftIB) - An InteractiveBrokers API Library for OS X written in Swift. InteractiveBrokers is one of a few, if not the best, brokerage company provide
Gateway+API solution for traders.
 
 
Extensions
 
Dollar.swift (https://github.com/ankurp/Dollar.swift) - A functional tool-belt for Swift Language similar to Lo-Dash or Underscore in Javascript.
swiftz (https://github.com/maxpow4h/swiftz) - A Swift library for functional programming.
ExSwift (https://github.com/pNre/ExSwift) - JavaScript (Lo-Dash, Underscore) & Ruby inspired set of Swift extensions for standard types and classes.
Observable-Swift (https://github.com/slazyk/Observable-Swift) - Value Observing and Events for Swift.
PromiseKit (https://github.com/mxcl/PromiseKit) - A delightful Promises implementation for iOS.
Promissum (https://github.com/tomlokhorst/Promissum) - Promise library with functional combinators like map, flatMap, whenAll & whenAny.
Promise (https://github.com/Coneko/Promise) - Simple promises library in Swift.
PureFutures (https://github.com/wiruzx/PureFutures) - Futures and Promises library
SwiftTask (https://github.com/ReactKit/SwiftTask) - Promise + progress + pause + cancel, using SwiftState (state machine).
Pythonic.swift (https://github.com/practicalswift/Pythonic.swift) - Pythonic tool-belt for Swift – a Swift implementation of selected parts of Python standard library.
SWRoute (https://github.com/rodionovd/SWRoute) - A tiny Swift wrapper. Allows you to route (hook) quite any function/method with another function/method or even a closure.
Euler (https://github.com/mattt/Euler) - Swift Custom Operators for Mathematical Notation.
swix (https://github.com/scottsievert/swix) - Swift Matrix and Machine Learning Library.
Easy-Cal-Swift (https://github.com/onevcat/Easy-Cal-Swift) - Overload +-/ operator for Swift, make it easier to use (and not so strict).
AlecrimCoreData (https://github.com/Alecrim/AlecrimCoreData) - A simple Core Data wrapper library written in Swift.
Async (https://github.com/duemunk/Async) - Syntactic sugar in Swift for asynchronous dispatches in Grand Central Dispatch.
SwiftState (https://github.com/inamiy/SwiftState) - Elegant state machine for Swift.
LlamaKit (https://github.com/LlamaKit/LlamaKit) - Collection of must-have functional Swift tools.
ReactKit (https://github.com/ReactKit/ReactKit) - Swift Reactive Programming.
Basis (https://github.com/typelift/Basis) - A number of foundational functions, types, and typeclasses.
CAAnimation + Closure (https://github.com/honghaoz/Swift-CAAnimation-Closure) - Add start / completion closures for CAAnimation instances
SwiftyUserDefaults (https://github.com/radex/SwiftyUserDefaults) — a cleaner, swiftier API for NSUserDefaults
Pluralize.swift (https://github.com/joshualat/Pluralize.swift) - Great Swift String Pluralize Extension
SwiftSequence
(https://github.com/oisdk/SwiftSequence) - A μframework of extensions for SequenceType in Swift 2.0, inspired by Python's itertools, Haskell's standard library, and other things.
BrightFutures (https://github.com/Thomvis/BrightFutures) - Write great asynchronous code in Swift using futures and promises.
EZSwiftExtensions (https://github.com/goktugyil/EZSwiftExtensions) - :smirk: How Swift standard types and classes were supposed to work.
BFKit-Swift (https://github.com/FabrizioBrancati/BFKit-Swift) - A collection of useful classes to develop Apps faster.
Sugar (https://github.com/hyperoslo/Sugar) - Something sweet that goes great with your Cocoa.
ZamzamKit (https://github.com/ZamzamInc/ZamzamKit) - A collection of micro utilities and extensions for Standard Library, Foundation and UIKit.
Bow (https://github.com/bow-swift/bow) - Companion library for Typed Functional Programming in Swift.
SwiftCoroutine (https://github.com/belozierov/SwiftCoroutine) - Swift coroutines for iOS and macOS.
 
Misc
 
acli (https://github.com/eugenpirogoff/acli) - commandline tool to download curated libraries from github (very beta)
Compass (https://github.com/hyperoslo/Compass) - Compass helps you setup a central navigation system for your application.
R.swift (https://github.com/mac-cain13/R.swift/) - tool to get strong typed, autocompleted resources like images and segues in your Swift project
SwiftKVC (https://github.com/bradhilton/SwiftKVC) - Key-Value Coding (KVC) for native Swift classes and structs
Tactile (https://github.com/delba/Tactile) - A safer and more idiomatic way to respond to gestures and control events.
Swift 4 Module Template (https://github.com/fulldecent/swift4-module-template) - An opinionated starting point for awesome, reusable Swift 4 modules
SwiftValidators (https://github.com/gkaimakas/SwiftValidators) - String validation for iOS developed in Swift. Inspired by validator.js
Versions (https://github.com/zenangst/Versions) - Helping you find inner peace when comparing version numbers in Swift
Swift 4 Module Template (https://github.com/fulldecent/swift4-module-template) - An opinionated starting point for awesome, reusable Swift 4 modules
 
Resources
Various resources, such as books, websites and articles, for improving your Swift development skills and knowledge.
 
Swift Websites
 
Official website (https://developer.apple.com/swift/) - A home page of Swift programming language.
Official blog (https://developer.apple.com/swift/blog/) - Official Swift Blog.
Jameson Quave's blog (http://jamesonquave.com/blog/category/swift/) - Tips for everyday work with Swift.
Swift Collection on Medium (https://medium.com/swift-programming) - Collection of blog posts about Swift on Medium.
Swift Collection on raywenderlich.com (http://www.raywenderlich.com/?s=swift) - Collection of blog posts about Swift on raywenderlich.
SwiftInFlux (https://github.com/ksm/SwiftInFlux) - An attempt to gather all that is in flux in Swift.
We ❤ Swift (http://www.weheartswift.com/) - Tutorials and guides.
Natasha The Robot (http://natashatherobot.com/) - Nice blog about Swift by Natasha The Robot.
LearnSwift.tips (http://www.learnswift.tips/) - A curated list of helpful resources to learn Swift. Tutorials, Code Samples, References.
Hacking with Swift (https://www.hackingwithswift.com/) - a complete Swift training course that teaches you app development through 36 hands-on projects, for free.
SwiftLang (http://swiftlang.eu) - a Swift Resource Center & Community.
WWDC-Recap (https://erenkabakci.github.io/WWDC-Recap/) - A collection of session summaries in markdown format, from WWDC 19 & 17.
Cocoacasts (https://cocoacasts.com/) - Tutorials and videos about Swift and Cocoa development.
 
Swift Books
 
The Swift Programming Language (https://itunes.apple.com/us/book/the-swift-programming-language/id881256329?mt=11)
Using Swift with Cocoa and Objective-C (https://itunes.apple.com/us/book/using-swift-cocoa-objective/id888894773?mt=11)
Swift Standard Library Reference (https://developer.apple.com/library/prerelease/ios/documentation/General/Reference/SwiftStandardLibraryReference/)
Learn to Program iOS and OS X with Apple Swift
(https://www.kickstarter.com/projects/alanforbes/learn-to-program-ios-and-os-x-with-apple-swift?utm_medium=referral&utm_source=swift.zeef.com%2Frobin.eggenkamp&utm_campaign=ZEEF)
 
Swift Videos
 
TheSwiftLanguage youtube channel (https://www.youtube.com/user/TheSwiftLanguage/) - Videos about the Swift programming language by Apple.
Brian Advent youtube channel (https://www.youtube.com/channel/UCysEngjfeIYapEER9K8aikw/videos) - High quality Swift tutorials.
SkipCasts youtube channel (https://www.youtube.com/user/SkipCasts/videos) - Skip Wilson's casts on Swift.
Developing iOS 8 Apps with Swift (https://itunes.apple.com/us/course/developing-ios-8-apps-swift/id961180099) - Stanford course by Paul Hegarty.
 
Swift Playgrounds
 
Learn-swift playground (https://github.com/nettlep/learn-swift) - Learn Swift interactively through these playgrounds.
Design-Patterns-In-Swift (https://github.com/ochococo/Design-Patterns-In-Swift) - Design Patterns implemented in Swift.
SwiftStub (http://swiftstub.com) - an online Swift playground and REPL.
 
 
Other Awesome Lists
 
Other amazingly awesome lists can be found in the awesome-awesomeness (https://github.com/bayandin/awesome-awesomeness) list.
 
Contributing
 
Your contributions are always welcome! Please submit a pull request or create an issue to add a new framework, library or software to the list. Do not submit a project, which hasn't been
updated in the past 6 months or is not awesome.