Awesome Swift
A curated list of awesome Swift frameworks, libraries and software.
Inspired by awesome-php.
UI
- Sejima - User
Interface Library components for iOS.
- Eureka - Elegant
iOS Forms in pure Swift.
- XLActionController
- Fully customizable and extensible action sheet controller written in
Swift.
- FlourishUI -
Framework for modals, color exensions and buttons.
- SwiftColors - HEX
color handling as an extension for UIColor.
- FontAwesome.swift -
Use FontAwesome in your Swift projects.
- SwiftOverlays -
GUI library for displaying various popups and notifications.
- ios-charts -
A powerful chart / graph framework, the iOS equivalent to MPAndroidChart.
- TagCellLayout -
UICollectionView layout for Tags with Left, Center & Right
alignments.
- TagListView -
Simple but highly customizable iOS tag list view.
- SwiftyButton
- Simple and customizable button in Swift
- Swiftstraints
- Powerful auto-layout framework that lets you write constraints in one
line of code.
- PagingMenuController
- Paging view controller with customizable menu in Swift
- GaugeKit -
Customizable gauges. Easy reproduce Apple’s style gauges.
- Hokusai - A library
for a cool bouncy action sheet
- LNRSimpleNotifications
- Simple Swift in-app notifications
- GoogleMaterialIconFont
- Google Material Icon Font for Swift and ObjC.
- CozyLoadingActivity
- Lightweight loading activity HUD
- VideoSplash
- Video based UIViewController
- EZAlertController
- Easy Swift UIAlertController
- EZSwipeController-
:point_up_2: UIPageViewController like Snapchat/Tinder/iOS Main
Pages
- ImagePicker -
A nicely designed and super easy to use ImagePicker. :camera:
- Notie - In-app
notification in Swift, with customizable buttons and input text
field.
- Whisper - Break
the silence of your UI, whispering, shouting or whistling at it
- HTYTextField -
A UITextField with bouncy placeholder in Swift.
- SwiftPasscodeLock
- An iOS passcode lock with TouchID authentication written in
Swift.
- SlideMenuControllerSwift
- iOS Slide Menu View based on Google+, iQON, Feedly, Ameba iOS app. It
is written in pure swift.
- Hue - Hue is the
all-in-one coloring utility that you’ll ever need.
- SAHistoryNavigationViewController
- SAHistoryNavigationViewController realizes iOS task manager like UI in
UINavigationContoller.
- WobbleView
- Implementation of wobble effect for any view in app.
- SimpleAlert -
Customizable simple Alert and simple ActionSheet for Swift
- Interactive
Side Menu - Customizable iOS Interactive Side Menu written in Swift
3.0.
- NFDownloadButton
- Revamped Download Button.
- EFQRCode - A
better way to operate quick response code in Swift.
- SendIndicator
- Yet another task indicator.
- SectionedSlider
- Control Center Slider.
- Cupcake - An easy
way to create and layout UI components for iOS.
- PinLayout -
Extremely Fast views layouting without auto layout. No magic, pure code,
full control and blazing fast. Concise syntax, intuitive, readable &
chainable.
- Gemini -
Gemini is rich scroll based animation framework for iOS, written in
Swift.
- Hero - Hero is
a library for building iOS view controller transitions.
- CrispyCalendar
- CrispyCalendar is the calendar UI framework.
- Ribbon - 🎀 A
simple cross-platform toolbar/custom input accessory view library for
iOS & macOS.
Files
- FileKit - Simple and
expressive file management in Swift.
JSON/XML Manipulation
- SwiftyJSON -
The better way to deal with JSON data in Swift.
- json-swift - A
basic library for working with JSON in Swift.
- Argo - JSON parsing
library for Swift, inspired by Aeson.
- ObjectMapper
- JSON Object mapping written in Swift.
- Alamofire-SwiftyJSON
- Alamofire extension for serialize NSData to SwiftyJSON.
- SWXMLHash -
Simple XML parsing in Swift.
- AEXML - Simple and
lightweight XML parser for iOS written in Swift.
- Starscream -
WebSockets Library
- JASON - JSON parsing
with outstanding performances and convenient operators.
- Fuzi - A fast &
lightweight XML/HTML parser with XPath & CSS support in Swift
2.
- Tailor - A super
fast & convenient object mapper tailored for your needs.
- SwiftyJSONAccelerator
- Generate Swift 5 model files from JSON with Codeable support.
Databases
Databases implemented in Swift.
- Realm - A mobile
database that runs directly inside phones, tablets or wearables.
- SQLite.swift - A
pure Swift framework wrapping SQLite3. Small. Simple. Safe.
- SwiftData - A
simple and effective wrapper around the SQLite3 C API written completely
in Swift.
- Squeal - A Swift
wrapper for SQLite databases.
- SQLiteDB - Basic
SQLite wrapper for Swift.
- SwiftMongoDB - A
Swift driver for MongoDB.
- ModelAssistant -
Elegant library to manage the interactions between view and model in
Swift.
- PostgresClientKit
- A PostgreSQL client library for Swift. Does not require libpq.
Testing
Libraries for testing codebases and generating test
data.
- Quick - A
behavior-driven development test framework for Swift and
Objective-C.
- Sleipnir - A
BDD-style framework for Swift.
- Nimble - A Matcher
Framework for Swift.
- Fakery - Swift
fake data generator.
- SwiftRandom
- Generator for random data.
- MockFive - A
mocking framework for Swift with runtime function stubbing.
Documentation
Libraries for generating documentation files.
- jazzy - A soulful way
to generate docs for Swift & Objective-C
Events
Libraries for one-to-many communications.
- Caravel - A Swift
event bus for UIWebView and JS
- EmitterKit -
An elegant event framework built in Swift
- Swift-Custom-Events
- A very simple way to implement Backbone.js style custom event
listeners and triggering in Swift for iOS development.
- Kugel - A glorious
Swift wrapper around NSNotificationCenter
Queue
Libraries for working with event and task queues.
- TaskQueue - A
Task Queue Class developed in Swift.
- Dispatcher -
Queues, timers, and task groups in Swift
- GCDKit - Grand
Central Dispatch simplified with Swift.
HTTP
Swift libraries and wrappers for HTTP clients.
- Alamofire - an
HTTP networking library written in Swift.
- ReactiveAPI -
Write clean, concise and declarative network code relying on URLSession,
with the power of RxSwift. Inspired by Retrofit.
- SwiftHTTP -
Thin wrapper around NSURLSession in swift. Simplifies HTTP
requests.
- Net - HttpRequest
wrapper written in Swift.
- OAuthSwift -
Swift based OAuth library for iOS
- Moya - Network
abstraction layer written in Swift
- Just - HTTP for
Humans (python-requests style HTTP library)
- SocketIO-Kit -
Socket.io iOS/OSX Client compatible with v1.0 and later
- SwiftWebSocket -
High performance WebSocket client library for Swift.
- AeroGear
IOS Http - is a thin layer to take care of your http requests
working with NSURLSession.
- Nuke - Advanced framework
for loading and caching images
- Siesta -
Ends state headaches by providing a resource-centric alternative to the
familiar request-centric approach to HTTP.
- Taylor - a web server
library in Swift.
- Perfect - a
web framework tayin Swift.
- Swifter - an HTTP
server engine in Swift.
- Kingfisher - A
lightweight and pure Swift implemented library for downloading and
caching image from the web.
Caching
Libraries for caching.
- HanekeSwift - A
lightweight generic cache for iOS written in Swift with extra love for
images.
- 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 -
Crypto related functions and helpers for Swift implemented in Swift
programming language.
- SHA256-Swift
- Swift framework wrapping CommonCrypto’s SHA256 methods.
- SwiftSSL - An
Elegant crypto toolkit in Swift.
- SwiftyRSA - RSA
public/private key encryption in Swift
Logging
Libraries for generating and working with log files.
- QorumLogs —
Swift Logging Utility for Xcode & Google Docs.
- CleanroomLogger -
A configurable and extensible pure Swift logging API that is simple,
lightweight and performant.
- XCGLogger - A
debug log framework for use in Swift projects.
- Swell - A logging
utility for Swift and Objective C.
- Log - A logging tool with
built-in themes, formatters, and a nice API to define your owns.
- 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
- An elegant pure Swift library for building command line
applications.
Audio
- AudioKit - Audio
synthesis, processing, and analysis platform
- MusicKit -
Framework and DSL for creating, analyzing, and transforming music in
Swift
- WebMIDIKit
- Simplest MIDI Swift framework
Third Party APIs
Libraries for accessing third party APIs.
- GooglePlacesAutocomplete
- Simple Google Places address entry for iOS.
- Swifter - A
Twitter framework for iOS & OS X written in Swift
- 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 -
A functional tool-belt for Swift Language similar to Lo-Dash or
Underscore in Javascript.
- swiftz - A Swift
library for functional programming.
- ExSwift - JavaScript
(Lo-Dash, Underscore) & Ruby inspired set of Swift extensions for
standard types and classes.
- Observable-Swift -
Value Observing and Events for Swift.
- PromiseKit - A
delightful Promises implementation for iOS.
- Promissum -
Promise library with functional combinators like
map,
flatMap, whenAll &
whenAny.
- Promise - Simple
promises library in Swift.
- PureFutures -
Futures and Promises library
- SwiftTask -
Promise + progress + pause + cancel, using SwiftState (state
machine).
- Pythonic.swift
- Pythonic tool-belt for Swift – a Swift implementation of selected
parts of Python standard library.
- SWRoute - A tiny
Swift wrapper. Allows you to route (hook) quite any function/method with
another function/method or even a closure.
- Euler - Swift Custom
Operators for Mathematical Notation.
- swix - Swift
Matrix and Machine Learning Library.
- Easy-Cal-Swift -
Overload +-*/ operator for Swift, make it easier to use (and not so
strict).
- AlecrimCoreData -
A simple Core Data wrapper library written in Swift.
- Async - Syntactic
sugar in Swift for asynchronous dispatches in Grand Central
Dispatch.
- SwiftState -
Elegant state machine for Swift.
- LlamaKit -
Collection of must-have functional Swift tools.
- ReactKit - Swift
Reactive Programming.
- Basis - A number of
foundational functions, types, and typeclasses.
- CAAnimation
+ Closure - Add start / completion closures for CAAnimation
instances
- SwiftyUserDefaults
— a cleaner, swiftier API for NSUserDefaults
- Pluralize.swift
- Great Swift String Pluralize Extension
- SwiftSequence -
A μframework of extensions for SequenceType in Swift 2.0, inspired by
Python’s itertools, Haskell’s standard library, and other things.
- BrightFutures
- Write great asynchronous code in Swift using futures and
promises.
- EZSwiftExtensions
- :smirk: How Swift standard types and classes were supposed to
work.
- BFKit-Swift -
A collection of useful classes to develop Apps faster.
- Sugar - Something
sweet that goes great with your Cocoa.
- ZamzamKit - A
collection of micro utilities and extensions for Standard Library,
Foundation and UIKit.
- Bow - Companion
library for Typed Functional Programming in Swift.
- SwiftCoroutine -
Swift coroutines for iOS and macOS.
Misc
- acli -
commandline tool to download curated libraries from github (very
beta)
- Compass - Compass
helps you setup a central navigation system for your application.
- R.swift - tool
to get strong typed, autocompleted resources like images and segues in
your Swift project
- SwiftKVC -
Key-Value Coding (KVC) for native Swift classes and structs
- Tactile - A safer and
more idiomatic way to respond to gestures and control events.
- Swift
4 Module Template - An opinionated starting point for awesome,
reusable Swift 4 modules
- SwiftValidators
- String validation for iOS developed in Swift. Inspired by
validator.js
- Versions -
Helping you find inner peace when comparing version numbers in
Swift
- Swift
4 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
Swift Books
Swift Videos
Swift Playgrounds
Other Awesome Lists
Other amazingly awesome lists can be found in the 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.