A curated list of awesome Swift frameworks, libraries, and software for iOS / OSX / tvOS / watchOS and Linux.
let 🐧 = Linux.Ready
Please take a quick look at the contribution guidelines first. If you see a package or project here that is no longer maintained or is not a good fit, please submit a pull request to improve this file. Thank you to all contributors; you rock!
- Demo Apps
- Dependency Managers
- Guides
- Patterns
- Editor Support
- Libs
- Animation
- App Routing
- App Store
- Audio
- API
- Bluetooth
- Camera
- Chat
- Colors
- Command Line
- Concurrency
- Data Management
- Date
- Embedded Systems
- Events
- Fonts
- Gesture
- iBeacon
- Images
- Keyboard
- Key Value Coding
- Kit
- Layout
- Localization
- Location
- Logging
- Maps
- Math
- Network
- Quality
- Security
- System
- Testing
- Text
- Thread
- UI
- Utility
- Video
- Misc
- Tools
Some interesting demo/poc apps written in Swift.
A list of iOS Swift demo apps
- 2048 - 2048 demo game in Swift.
- Alarm - an alarm app in Swift.
- Cafe - Cafe App in Swift.
- Chat - chat like app implementation in Swift.
- CloudKit-To-Do-List - a cloudkit based to do list.
- DeckRocket - deckrocket porting in Swift.
- Edhita - text edit app.
- Eidolon - The Artsy auction kiosk app.
- Federal Open Data - Get federal Open Data using the Federal Data SDK
- Feeds4U - Well architectured RSS reader app written in Swift.
- firefox-ios - firefox for iOS being developed by Mozilla.
- FlappySwift - flappy bird clone in Swift.
- GrubbyWorm - gameplaykit and spritekit demo game.
- HackerNews - hackernews reader app written in Swift.
- HackerNewsClient-iOS - hackernews client in Swift.
- HausClock - chess stile clock app in Swift.
- HealthKitDemo - health kit demo app.
- HomeKitDemo - homekit demo app.
- iContactU - delivered on Apple Store: reminds you to contact people you ought to.
- iOS-9-Sampler - Code examples for the new features of iOS 9.
- KeychainDemo - keychain sharing between an App and it's share extension
- Layer Parse Sample Chat App - Swift sample app that integrates Layer and Atlas with Parse.
- LayerPlayer - explores CALayer and subclasses; written in Swift; also on App Store.
- Lucid Weather Clock - Hyper-local weather app with precipitation clock developed in Swift.
- MyAwesomeChecklist - checklist app in Swift.
- Path Logger - a GPS Path Logger with Core Data.
- Pocket Forecast - typhoon weather example.
- ReactiveSwiftFlickrSearch - an MVVM & ReactiveCocoa Flickr search app in Swift.
- Reusable Apps Code - a collection of reusable pieces of code in Swift.
- Round & Split - a tip calculator in Swift
- SafariAutoLoginTest - a demo showing how you can auto-login users to an iOS app (on iOS 9) based on Safari cookies.
- StateRestorationDemo - learn how to implement state restoration in (Swift) code.
- Static-icon-shortcuts-sample - a sample app demonstrates how to add iOS 9’s Quick Actions shortcut support using 3D touch API.
- Stick Hero Swift - an universal spritekit based game in Swift.
- Swift Radio - Professional Radio Station App, created w/ Swift 2.0.
- SwiftAnyPic - Parse's Anypic app in Swift.
- SwiftDemo - a collection of demo for Swift.
- SwiftFlickrApp - flickr app written in Swift.
- SwiftHN - hacker news app in Swift.
- SwiftWeather - a nice weather app written in Swift.
- Task - a task app written in Swift that is published in the app store.
- TextEthan - a clone of TextEthan, a messaging app that allows anyone to message you.
- The Oakland Post - a full-fledged, 100%-Swift (minus dependencies) news reader.
- trySwiftApp - trySwift! Conference app.
- Valio - event time table app in Swift.
- VPNOn - vpn handler with Apple Watch support.
- Walk Tracker - GPS Walk Tracking app with Core Data.
A list of Apple watch enabled projects
- Gulps - OS app for iOS and apple watch to monitor water consumption.
- Soon - Countdown app for apple watch.
- WatchOS 2 Sampler - WatcOS 2 Samples.
Some cool opensource & swift based apps for tvOS
- NarrativeClip tvOS - NarrativeClip tvOS app.
A list of OSX Swift demo apps
- Allkdic - a status bar dictionary.
- clock-saver - a clock screen saver for osx written in Swift.
- Debter - simple personal debt manager for OS X.
- dshb - OS X system monitor in Swift.
- Helium - floating web browser.
- Panda - a simple OSX menu bar application to enable/disable Yosemite dark mode.
- RetinAssets - a simple app that generates missing images from a scaled images (3x -> 2x and 1x scale).
Dependency manager software for Swift.
- Carthage - a new dependency manager for Swift.
- CocoaPods - the most used dependency manager for Objective-C and Swift (Swift supported since version 0.36.0).
- Conche - Swift build system and dependency manager.
- swift-package-manager - The Package Manager for the Swift Programming Language.
An awesome list of Swift related guides.
- Apple eBook - Official Apple eBook for swift beginners.
- Apple Swift Guide - Official guide by Apple about swift.
- 30 Days of Swift - A cool 30 days tutorial for swift.
- A better way to learn Swift - Learn Swift in a different way.
- Awesome Swift Education - An organized list of essential Swift Language Topics
- Developing iOS 8 Apps with Swift - Stanford course by Paul Hegarty.
- Hacking With Swift - Complete Swift training course that teaches app development through 30 hands-on projects, for free. Everything is taught as part of a practical project, so you can immediately apply your knowledge as you learn (projects source code).
- Learn Swift - a collection of tuts that will help you learning Swift via playground.
- Natasha the Robot - Weekly Newsletter on learning Swift
- Practice Swift - an interesting guide to learn Swift.
- RxSwift Community - Libraries, guides & projects that support
RxSwift
- Swift A Day - Daily swift experiments by Linda Dong.
- Swift Sandbox Newsletter - Swift Sandbox is a weekly newsletter containing a collection of links to the best Swift code and developer tools. Every Friday. Free.
- Swift Tips - Swift tips collection.
- Swift-Weekly - Weekly Swift Language Gems, Tips and Tricks.
- SwiftDoc - Auto-generated documentation for Swift.
- SwiftGuide CN - A Chinese written guide for Swift.
- SwiftInFlux - A well explained list of feature in flux for Swift.
- Swifty - App to learn to code in Swift.
- GitHub - Style guide & coding conventions for Swift projects.
- Raywenderlich - Raywenderlich Swift guide, a must read.
- SlideShare (LinkedIn) - Style guides that SlideShare (LinkedIn) uses for their Swift iOS app.
- Swift-Best-Practices - Best practices for software development with Swift.
- Design-Patterns-In-Swift - Design Patterns implemented in Swift.
Support for your favorite editors.
- swift-mode - Emacs Swift support, including partial flycheck error support.
- swift-vim - play Swift with vim editor.
- vim-polyglot - language pack for vim that includes vim-swift.
- vim-swift - adds Swift support to vim. It covers syntax, indenting, and more.
Here you can find a list of snippets and libs for your Swift projects.
Libs to help with animation
- Animo - SpriteKit-like animation builders for CALayers.
- Cheetah - An animation library on iOS with Swift 2.
- DKChainableAnimationKit - Easy to read and write chainable animations in Swift.
- EasyAnimation - A Swift library to take the power of UIView.animateWithDuration(_:, animations:...) to a whole new level.
- IBAnimatable - Design and prototype UI, interaction, navigation, transition and animation for App Store ready Apps in Interface Builder with IBAnimatable.
- Presentation - A Swift library to help you to make tutorials, release notes and animated pages.
- Spring - A library to simplify iOS animations in Swift.
Internal app routing systems.
- IKRouter - URLScheme router than supports auto creation of UIViewControllers.
- URLNavigator - Elegant URL Routing for Swift.
Libs to help with apple app store, in app purchases and receipt validation.
- InAppFw - In App Purchase Manager framework.
- [SwiftInAppPurchase] (https://github.com/rpzzzzzz/SwiftInAppPurchase) - A swift wrapper for iOS in app purchases.
- SwiftyStoreKit - Lightweight In App Purchases Swift framework.
Libs to work with audio
- AudioPlayer - A wrapper around AVPlayer with some cool features.
- AudioPlayerSwift - AudioPlayer is a simple class for playing audio (basic and advanced usage) in iOS, OS X and tvOS apps
- Beethoven - An audio processing Swift library for pitch detection of musical signals.
- MusicKit - A framework for composing and transforming music in Swift.
- TuningFork - A Simple Tuner for iOS.
Quick libs to get access to third party API services
- Dip - A simple Dependency Injection Container.
- Federal Data SDK - Eases access to multiple federal government OpenGov APIs.
- GooglePlacesAutocomplete - Simple Google Places address entry for iOS.
- PredictionIO SDK - A convenient API to communicate with PredictionIO's Event Server and ML Engines.
- PXGoogleDirections - Google Directions API helper.
- reddift - reddit API wrapper.
- Swifter Twitter - Swifter Twitter framework for Swift.
- Swinject - A dependency injection framework for Swift.
- Typhoon - Dependency injection toolkit in Swift.
*Wrappers around CoreBluetooth
- BlueCap - BlueCap provides a swift wrapper around CoreBluetooth and much more.
- BluetoothKit - A much simpler, high-level Swift API to allow easy communication between iOS devices using Bluetooth 4.0 LE.
Awesome camera libs
- ALCameraViewController - Camera view controller with custom image picker and image cropping.
- Fusuma - Instagram-like photo browser and a camera feature.
Libs to get access to build chat app
- Chatto - A lightweight framework to build chat applications, made in Swift.
Interesting snippets related to color management and utility.
- AEConicalGradient - Conical (angular) gradient in Swift.
- [Chameleon] (https://github.com/ViccAlexander/Chameleon) - Chameleon is a lightweight, yet powerful, color framework for iOS (Objective-C & Swift).
- [Colors] (https://github.com/icodeforlove/Colors) - A pure Swift library for using ANSI codes.
- DynamicColor - An extension to manipulate colors in Swift easily.
- FlatUIColors - Flat UI color palette in Swift.
- Google Material Color - Google Material Color Palette in Swift.
- HexColor - Define UIColors as Hex integers.
- Hue - Hue is the all-in-one coloring utility that you'll ever need.
- PrettyColors - Styles and colors text in the Terminal with ANSI escape codes. Conforms to ECMA Standard 48.
- RandomColorSwift - An attractive color generator for Swift (ported from randomColor.js).
- SwiftGen-Colors - A tool to auto-generate Swift
enums
for yourUIColor
constants. - SwiftHEXColors - HEX color handling as an extension for UIColor.
- UIColor-Hex-Swift - Hex to UIColor converter.
- UIColorWDUtils - Extension for Hex RGB(A).
- ImagePalette - Swift/iOS port of Android's Palette
Create command line applications.
- Commander 🐧 - Compose beautiful command line interfaces in Swift.
- CommandLine 🐧 - A pure Swift library for creating command-line interfaces.
- Phiole - Allow to write or read from standards stream in swift for CLI applications.
- Swiftline - A set of tools to help you create command line applications.
- SwiftyTextTable - A lightweight library to generate text tables.
Easier ways to work with concurrency.
- Venice 🐧 - Communicating sequential processes (CSP) for Swift 2 (Linux ready).
No more pain with Core Data, here are some interesting libs to handle data management.
- AERecord - super awesome Core Data wrapper library for iOS written in Swift.
- AlecrimCoreData - a simple CoreData wrapper library written in Swift.
- CoreDataOperation - a safe, asynchronous CoreData operation class.
- CoreStore - simple and elegant way to handle CoreData in Swift.
- CoreValue - Lightweight Framework for using Core Data with Value Types.
- Graph - An elegant data-driven framework for CoreData in Swift.
- JSQCoreDataKit - A swifter Core Data stack.
- QueryKit - an easy way to play with coredata filtering within your Swift projects.
- SugarRecord - an easy with to work with coredata and realm.
- SuperRecord - A small set of utilities to make working with CoreData and Swift a bit easier.
- Algorithm - A toolset for writing algorithms and probability models in Swift.
- Realm - Realm is a mobile database: a replacement for Core Data & SQLite (https://realm.io).
- Realm+JSON - A concise Mantle-like way of working with Realm and JSON.
- [CFileWrapper] (https://github.com/divadretlaw/CFileWrapper) 🐧 - Read/Write files in Swift without Foundation.
- FileBrowser - Powerful Swift file browser for iOS.
- FileKit - Simple and expressive file management in Swift.
- PathKit 🐧 - Effortless path operations in Swift.
Struggling using json data? Here are some interesting ways to handle it.
- AlamofireJsonToObjects - An Alamofire extension which converts JSON response data into swift objects using Reflection.
- AlamofireObjectMapper - An Alamofire extension which converts JSON response data into swift objects using ObjectMapper.
- Alexander - An extremely simple JSON helper written in Swift.
- Argo - Json parsing library.
- Decodable 🐧 - JSON parsing for Swift 2.
- EVReflection - Reflection based JSON encoding and decoding. Including support for NSDictionary, NSCoding, Printable, Hashable and Equatable
- Genome - A simple, type safe, failure driven mapping library for serializing JSON to models in Swift 2.0.
- Gloss 🐧 - shiny JSON parsing library.
- Himotoki - A type-safe JSON decoding library purely written in Swift.
- JASON - JSON parsing with outstanding performances and convenient operators.
- json-swift - A basic library for working with JSON in Swift.
- JSONCodable - Hassle-free JSON encoding and decoding in Swift.
- JSONHelper - lightning fast JSON deserialization and value conversion library for iOS & OS X written in Swift.
- JSONNeverDie - Auto reflection tool from JSON to Model, user friendly JSON encoder / decoder, aims to never die.
- ModelRocket - An iOS framework for creating JSON-based models.
- ObjectMapper - JSON object mapper.
- Pistachio - Generic model framework for Swift.
- PPJSONSerialization - Convert JSON string to Swift Class.
- SwiftJSONParser - JSON parser.
- SwiftMapper - JSON Mapper.
- SwiftyJSON 🐧 - A lib for JSON in Swift with error handling.
- Tailor - A super fast & convenient object mapper tailored for your needs.
- Unbox - The easy to use Swift JSON decoder.
- YamlSwift - Load YAML and JSON documents using Swift.
- Prephirences - Manage application preferences, NSUserDefaults, iCloud, Keychain and more.
- Storez - Safe, statically-typed, store-agnostic key-value storage.
- SwiftStore - A Key-Value store for Swift backed by LevelDB.
- SwiftyUserDefaults — a cleaner, nicer syntax for NSUserDefaults.
- Zephyr - Effortlessly synchronize NSUserDefaults over iCloud.
Are you interested in storing your app data using SQLite? Here are some interesting resources.
- GRDB.swift - A versatile SQLite toolkit for Swift.
- SQLite.swift - A pure Swift framework wrapping SQLite3. Small. Simple. Safe.
- SQLiteDB - sqlite wrapper for Swift.
- SwiftData - simple and Effective SQLite Handling in Swift.
- [MySQL] (https://github.com/Zewo/MySQL) 🐧- MySQL adapter for Swift 2.2.
- [PostgreSQL] (https://github.com/Zewo/PostgreSQL) 🐧 - PostgreSQL adapter for Swift 2.2.
If you prefer to manage XML data formatted entries, here are some helpful libs
- AEXML - xml wrapper.
- AlamofireXmlToObjects - An Alamofire extension for fetching an XML feed and parsing it into objects.
- Fuzi - A fast & lightweight XML/HTML parser with XPath & CSS support in Swift 2.
- SWXMLHash - Simple XML parsing in Swift.
- XMLParser - A lightweight XMLParser for assembling and parsing XML values written for iOS 8+ in Swift 2.
- Zip - Swift framework for zipping and unzipping files.
Other ways to persist data
- EVCloudKitDao - Simplified access to CloudKit with support for subscriptions and local caching.
Handle data formatting easily.
- AFDateHelper - Simple date helper.
- Datez - Swift library for dealing with
NSDate
,NSCalendar
,NSDateComponents
, andNSTimeInterval
. - Punctual.swift 🐧 - Swift date handler.
- Swift-NSDate-Extensions - Swift Version of Erica's NSDate Extensions.
- SwiftDate - Easy NSDate Management in Swift.
- SwiftMoment - A time and calendar manipulation library.
- SwiftyTimer
- Tempo - Date and time manager for iOS/OSX written in Swift.
- Timepiece - Intuitive NSDate extensions in Swift.
Build your embedded Linux projects in Swift on a RaspberryPi, BeagleBone, C.H.I.P. and other boards.
- SMBus-swift 🐧 - Communicate with SMBus/I2C devices.
- SwiftyGPIO 🐧 - Interact with Linux GPIO/SPI/PWM on ARM.
Interact with specific external peripherals.
- Scroll-phat-swift 🐧 - Control the Pimoroni Scroll pHAT.
- 5110LCD_PCD8544.swift 🐧 - Nokia3310/5110 PCD8544 Monochrome LCD display library.
Alternatives to NSNotificationCenter, Key-Value-Observation, or delegation.
- Bond - a Swift binding framework.
- BrightFutures - promise and future lib for swift.
- Caravel - A Swift event bus for UIWebView and JS.
- EmitterKit - an implementation of event emitters and listeners in swift.
- Forbind - Functional chaining and Promises in Swift.
- Future - A micro framework providing Future<T, Error>.
- FutureKit - A Swift based Future/Promises Library.
- Notificationz - Helping you own
NSNotificationCenter
by providing a simple, customizable adapter. - PromiseKit - async promise programming lib.
- PureFutures - Futures and Promises library.
- ReactiveCocoa - ReactiveCocoa (RAC) is a Cocoa framework inspired by Functional Reactive Programming. It provides APIs for composing and transforming streams of values over time.
- ReactKit - Swift Reactive Programming.
- RxSwift - Microsoft Reactive Extensions (Rx) for Swift and iOS/OSX platform.
- Safe - A modern concurrency and synchronization for Swift.
- SignalKit - Swift event and binding framework.
- Signals - replaces delegates and notifications.
- SSEventFlow - A type safe alternative to NSNotification, inspired by Flux.
- SwiftEventBus - A publish/subscribe event bus optimized for iOS.
- When - A lightweight implementation of Promises in Swift.
A collection of font related snippets.
- Font-Awesome - Use Font Awesome in project written in Swift.
- FontAwesome.swift - Use FontAwesome in your Swift projects.
- FontBlaster - Programmatically load custom fonts into your iOS app.
- GoogleMaterialDesignIcons - google Material Design Icons Font for iOS.
- GoogleMaterialIconFont - Google Material Icon Font for Swift and ObjC.
- MCFontAwesome - fontawesome porting for Swift.
- OpenSansSwift - OpenSans for Swift.
- SDevIconFonts - Fontawesome, Iconic, Ionicons, Octicon porting for Swift.
- Swicon - Use 1600+ icons from FontAwesome and Google Material Icons (and even your own customized icons) in your swift/iOS project!
- SwiftFontName - OS font complements library. Localized font supported.
- SwiftFonts - render all the supported fonts in Swift.
- DBPathRecognizer - db path recognizer for letters.
- Tactile - Attach function handlers to gesture and control events in a more expressive and safer way.
Interested in using iBeacon in your Swift project? Here some interesting resources.
- iBeacon - iBeacon implementation in Swift.
An interesting list of image related libs..
- Agrume - A lemony fresh iOS image viewer written in Swift.
- AlamofireImage - AlamofireImage is an image component library for Alamofire.
- APNGKit - High performance and delightful way to play with APNG format in iOS.
- CYFastImage - display images from web.
- DePict - functional wrapper for CoreGraphics.
- Filterpedia - core image filter
- gifu - highly performant animated GIF support for iOS in Swift.
- HanekeSwift - A lightweight generic cache for iOS written in Swift with extra love for images.
- ImageLoader - A lightweight and fast image loader for iOS written in Swift.
- ImageScout - a Swift implementation of fastimage - supports PNG, GIF, and JPEG.
- KFSwiftImageLoader - An extremely high-performance, lightweight, and energy-efficient pure Swift async web image loader with memory and disk caching for iOS and Watch.
- Kingfisher - a lib for image download and caching.
- MapleBacon - Swift image download and caching library.
- Misen - A script to support using Xcode Asset Catalog in Swift.
- Nuke - Advanced pure Swift framework for loading, caching, processing, displaying and preheating images.
- PASImageView - async remote download your image and round them. automatically.
- PassportScanner - Scan the MRZ code of a passport and extract the first name, last name, passport number, nationality, date of birth, expiration date and personal number.
- SwiftColorArt - font schema generator according image colours.
- SwiftGen-Assets - A tool to auto-generate Swift
enums
for all yourUIImages
from your Assets Catalogs. - SwiftGif - A small UIImage extension with gif support.
- SwiftSVG - A single pass SVG parser with multiple interface options (String, NS/UIBezierPath, CAShapeLayer, and NS/UIView)
- Toucan - Image processing api.
- UIImageView-BetterFace-Swift - autoresize images and if any face discovered refine the position of the image.
- XAnimatedImage - XAnimatedImage is a performant animated GIF engine for iOS written in Swift based on FLAnimatedImage
Do you want to create your own customized keyboard? Here are some interesting resources
- Hodor Keyboard - poc for custom keyboard implementation.
Libraries for key-value coding in Swift
- SwiftKVC - Key-Value Coding (KVC) for native Swift classes and structs.
Libraries for coding with a simplified API
- C4iOS - C4iOS Development Repository.
- BFKit-Swift - A collection of useful classes to develop Apps faster.
Libs to help you with layout.
- ManualLayout - Easy to use and flexible AutoLayout alternative for iOS 8+. Supports AsyncDisplayKit.
- Neon - A powerful Swift programmatic UI layout framework.
- Static - A simple static table views for iOS in Swift.
- Stevia - Elegant way to manage layout.
- SwiftBox - Flexbox in Swift, using Facebook's css-layout.
- UIViewprint - Swift iOS view layout reimagined.
- ViewMonitor - Confirm view positions with executing app.
Bored of using storyboard? Give a try to declarative auto layout libs.
- Cartography - declarative auto layout lib for your project.
- FormationLayout - Auto Layout lib supports group layout and size classes.
- MisterFusion - A Swift DSL for AutoLayout. It can be used in both Swift and Objective-C, in addition, it supports Size Class.
- PureLayout – The ultimate API for iOS & OS X Auto Layout.
- Restraint - Minimal Auto Layout in Swift.
- SnapKit - A Swift Autolayout DSL for iOS & OS X.
- Swift-iOS-Localize-Constraint - localize constraint on the fly to support RTL and LTR with same view.
- SwiftAutoLayout - a small DSL for autolayout.
- Swiftstraints - Powerful auto-layout framework that lets you write constraints in one line of code.
- SwiftyLayout - Lightweight mathematical declarative auto-layout framework for Swift.
- Tails - declarative autolayout for ios app written in swift.
- VFLToolbox - fancy Swift implementation of the Visual Format Language.
Frameworks that helps with localizing your app
- Localize-Swift - Localize apps using e.g. regular expressions in Localizable.strings.
- Swifternalization - Localize apps using e.g. regular expressions in Localizable.strings.
- SwiftGen-L10n - A tool to auto-generate Swift
enums
for all your Localizable.strings keys (with appropriate associated values if those strings contains printf-format placeholders like%@
).
Utilities for writing to and reading from the device log
- CleanroomASL 🐧 — Low-level Swift API for writing to and reading from the Apple System Log daemon.
- CleanroomLogger 🐧 — Configurable and extensible high-level logging API that is simple, lightweight and performant.
- HeliumLogger 🐧 - IBM's lightweight logging framework.
- Log - A logging tool with built-in themes, formatters, and a nice API to define your owns.
- Puree - A log collector for iOS.
- QorumLogs — Swift Logging Utility for Xcode & Google Docs.
- Rainbow 🐧 - Delightful console output for Swift developers.
- Swell - a logging utility for Swift.
- SwiftBeaver 🐧 - Colorful, lightweight & fast logging in Swift 2.
- swiftRemoteLogger - Remote logging easy as 1..2..3 in Swift.
- Watchdog - A Swift utility for logging excessive blocking on the main thread.
- XCGLogger - Full featured & Configurable logging utility with log levels, timestamps, and line numbers.
- GEOSwift - The Swift Geographic Engine, make it easier to work with geographic models and calculate intersections, overlapping, projections etc.
- SwiftLocation - iOS CoreLocation Wrapper made in Swift.
- Arithmosophi - Set of protocols for Arithmetic and Logical operations.
- DDMathParser - DDMathParser makes it easy to parse a String and evaluate it as a mathematical expression.
- Easy-Cal-Swift - Overload +-*/ operator for Swift, make it easier to use (and not so strict).
- PlotKit - Plots made easy.
- swix - A general matrix language.
- Upsurge - Simple and fast matrix and vector math for Swift.
A list of libs that allow you to decrease the amount of time spent dealing with http requests.
- agent - http request agent.
- Alamofire 🐧 - elegant networking in Swift.
- APIKit - a library for building type-safe web API client.
- BigBrother - Automatically sets the network activity indicator for any performed request.
- Endpoint - 🚀 Elegant API Abstraction for Swift.
- GRequest - http request handler.
- Heimdallr.swift - Easy to use OAuth 2 library for iOS, written in Swift.
- Just - HTTP for Humans (a python-requests style HTTP library in Swift).
- ModestProposal - an HTTP toolbox.
- Moya - network abstraction layer.
- Net - an httprequest wrapper.
- Netfox - A lightweight, one line setup, network debugging library in Swift.
- NKMultipeer - A testable abstraction over multipeer connectivity
- OAuth2 - oauth2 auth lib.
- OAuthSwift - Swift based OAuth library for iOS.
- PeerKit - An open-source Swift framework for building event-driven, zero-config Multipeer Connectivity apps.
- Pitaya 🐧 - A Swift HTTP / HTTPS networking library just incidentally execute on machines.
- Reach - A simple class to check for internet connection availability in Swift.
- Reachability.swift - A replacement for Apple's Reachability re-written in Swift with closures.
- ResponseDetective - A non-intrusive framework for intercepting any outgoing requests and incoming responses between your app and server for debugging purposes.
- RestEssentials - An extremely lightweight REST and JSON library for Swift.
- RSNetworking - Network library written purely in Swift.
- Siesta Elegant abstraction for REST APIs that untangles stateful messes. An alternative to callback- and delegate-based networking.
- Stargate - A communication channel from your Mac to your watch.
- SwiftHTTP - NSURLSession wrapper.
- Transporter - A tiny library makes uploading and downloading easier.
- YYHRequest-Swift - http request in async.
Need to manipulate contents from html easily?
Would you like host a webserver in your device? Here you can find how to do it.
- Aeon - GCD based HTTP server for Swift 2.
- Curassow 🐧 - Swift HTTP server using the pre-fork worker model.
- Blackfish 🐧 - HTTP Webserver inspired by Express.js.
- Dynamo & DynamoLinux 🐧 - High Performance (nearly)100% Swift Web server supporting dynamic content.
- Express 🐧 - Swift Web Application framework, supporting both Synchronous and Asynchronous (Futures based) styles. Inspired by Play framework and Express.js.
- Frank 🐧 - Frank is a DSL for quickly writing web applications in Swift.
- http4swift 🐧 - A simple HTTP server written in Swift.
- Kitura 🐧 - IBM's web framework and server for web services written in Swift.
- Kunugi 🐧 - Minimal web framework and middleware for Swift.
- NetworkObjects - REST HTTP Server written in Swift. Builds REST API from Core Data.
- Perfect 🐧 - Server-side Swift. The Perfect library, application server, connectors and example apps.
- Swift-Server - Currently, a very basic proof-of-concept Swift HTTP server that does not require Foundation.
- swifter 🐧 - Http server written in Swift with routing handler.
- SwiftyHTTP - A simple GCD based HTTP client and server, written in 'pure' Swift.
- Swifton 🐧 - A Ruby on Rails inspired Web Framework for Swift that runs on Linux and OS X.
- Taylor - A lightweight library for writing HTTP web servers with Swift.
- Trevi - A powerful Swift Web Application Server Framework Project.
- Vapor 🐧 - Elegant web framework for Swift that works on iOS, OS X, and Ubuntu.
- XcodeServerSDK - Access Xcode Server API with native Swift objects.
- Zewo 🐧 - Server-Side Swift.
- BlueSocket 🐧 - IBM's low level socket framework.
- Socket.IO 🐧 - Socket.IO client for iOS/OS X.
- SocketIO-Kit - Socket.io iOS and OSX Client.
- Starscream - Websockets in swift for iOS and OSX.
- SwiftSocket - simple TCP socket library.
- SwiftWebSocket - A high performance WebSocket client library for swift.
- WebSocket 🐧 - WebSockets server for Swift 2.2 on Linux.
- SwiftFormat - Auto formatting Swift code, similar to Clang format.
- SwiftLint - A tool to enforce Swift coding conventions for your Swift code.
- Swimat - XCode plugin to format Swift code.
- Tailor 🐧 - Cross-platform static analyzer for Swift that helps you to write cleaner code and avoid bugs.
Deal with cryptography method easily in Swift
- CryptoSwift 🐧 - Crypto related functions and helpers for Swift implemented in Swift programming language.
- IDZSwiftCommonCrypto - A wrapper for Apple's Common Crypto library written in Swift.
- [OpenSSL] (https://github.com/Zewo/OpenSSL) 🐧 - OpenSSL helpers for Swift 2.2 on Linux.
- SweetHMAC - A tiny and easy to use Swift class to encrypt strings using HMAC algorithms.
- Swift-Sodium - Swift interface to the Sodium library for common crypto operations for iOS and OS X.
- SwiftSSL - add crypto toolkit in Swift.
- keychain-swift - Helper functions for saving text in Keychain securely for iOS, OS X, tvOS and watchOS.
- KeychainAccess - Simple Swift wrapper for Keychain that works on iOS and OS X.
- KeyClip - Keychain framework for iOS written in Swift.
- Latch - A simple Swift Keychain Wrapper for iOS.
- Locksmith - A powerful, protocol-oriented library for working with the iOS Keychain in Swift.
- SwiftKeychainWrapper - a simple static wrapper for the iOS Keychain to allow you to use it in a similar fashion to user defaults.
- iOS-TouchID-Swift - TouchID for Swift.
- JMEasyTouchID - TouchID one line wrapper.
Manage your device sensors in a faster and easier way
- MotionKit - iOS device sensors wrapper.
A collection of testing frameworks.
- CatchingFire - Test Library for Swift's Error Handling.
- DVR - A simple network testing framework for Swift.
- Erik - An headless browser to access and manipulate webpages using javascript allowing to run functional tests.
- Fakery - Swift fake data generator.
- Mockingjay - An elegant library for stubbing HTTP requests with ease in Swift.
- OHHTTPStubs - A testing library designed to stub your network requests easily.
- Quick 🐧 - Quick is a behavior-driven development framework for Swift and Objective-C.
- Sleipnir - BDD-style framework for Swift.
- Spectre 🐧 - BDD Framework for Swift.
- SwiftCheck - A testing library that automatically generates random data for testing program properties.
- SwiftMock - A mocking framework for Swift
A collection of text projects.
- Format - Swift formatting kit for numbers, addresses and colors.
- PySwiftyRegex - Easily deal with Regex in Swift in a Pythonic way.
- Regex by brynbellomy - Swift wrapper class for
NSRegularExpression
. Includes amap()
override and an operator (=~
) for a more Swift-like API. - Regex by crossroadlabs 🐧 - very easy to use, Regular Expressions library with rich functionality. Features both operator
=~
and method based APIs. Unit tests covered. - Roman 🐧 - Seamless Roman numeral conversion in Swift.
- SwiftString - A lightweight string extension for Swift.
- SwiftVerbalExpressions - VerbalExpressions porting for swift
- SyntaxKit - TextMate-style syntax highlighting.
- PhoneNumberKit - Swift framework for parsing, formatting and validating international phone numbers. Inspired by Google's libphonenumber.
Threading, task-based or asynchronous programming, Grand Central Dispatch (GCD) wrapper
- Async – Syntactic Swift sugar for Grand Central Dispatch.
- Async.legacy – Syntactic Swift sugar for Grand Central Dispatch (iOS 7 and OS X 10.9 Mavericks compatible fork).
- Atomic – A fast, flexible, well-tested wrapper for making values thread-safe.
- Chronos - Grand Central Dispatch Utilities.
- Dispatcher - Queues, timers, and task groups in Swift.
- EKI - Make Grand Central Dispatch easy and fun to use (queue, task, group, timer and semaphore).
- GCD - A wrapper of Grand Central Dispatch written in Swift.
- GCDKit - Grand Central Dispatch simplified with Swift.
A collection of pre-packaged transitions & cool ui stuffs.
- AAWindow - UIWindow subclass to enable behavior like adaptive round-corners & detecting when Control Center is opened.
- ActiveLabel - UILabel drop-in replacement supporting Hashtags (#), Mentions (@) and URLs (http://).
- Adaptive Tab Bar - Adaptive tab bar.
- AECoreDataUI - Core Data driven UI made in Swift.
- AIFlatSwitch - Flat animated switch.
- AMScrollingNavbar - Scrollable UINavigationBar that follows the scrolling of a UIScrollView.
- BreakOutToRefresh - A playable pull to refresh view using SpriteKit.
- BusyNavigationBar - A UINavigationBar extension to show loading effects.
- BWWalkthrough - A class to build custom walkthroughs for your iOS App.
- CharacterText - Perform fx on UILabel.
- CKPickerView - A UIPickerView drop-in replacement with support for titles and Selection Indicator customization.
- CountdownLabel - Simple countdown UILabel with morphing animation, and some useful function.
- Dodo - A message bar for iOS written in Swift.
- EPShapes - Create shapes(Polygons, Stars, Hearts, Arrows) in Interface builder.
- EstMusicIndicator - Music play indicator like iTunes
- EZLoadingActivity - Lightweight loading activity HUD.
- EZSwipeController - 👆 UIPageViewController like Snapchat/Tinder/iOS Main Pages.
- Few.swift - Views as functions of their state.
- FillableLoaders - Fillable loaders progress.
- FlagKit - Beautiful flag icons for usage in apps and on the web.
- FloatLabelFields - Text entry controls which contain a built-in title/label so that you don't have to add a separate title for each field.
- FloatRatingView - Floating rating system.
- GaugeKit - Customizable gauges. Easy reproduce Apple's style gauges.
- Gecco - Spotlight view for iOS
- Geometry - extensions for UIView.
- GIFRefreshControl - A pull to refresh that supports GIF images as track animations.
- GMStepper - A stepper with a sliding label in the middle.
- GRMustache - Flexible Mustache templates for Swift.
- HoneycombView - HoneycombView is the iOS UIView for displaying like Honyecomb layout written by swift.
- HTYTextField - A UITextField with bouncy placeholder in Swift.
- ImagePicker - A nicely designed and super easy to use ImagePicker.
- ImagePickerSheetController - A component that replicates the custom photo action sheet in iMessage.
- Instructions - A Swift library to create app walkthroughs and guided tours.
- IncrementableLabel - An UILabel subclass to (de)increment numbers in an UILabel
- ios-charts - An iOS port of the beautiful. MPAndroidChart.
- JLToast - Toast for Swift.
- KCHorizontalDial - A horizontal scroll dial like Instagram.
- KCSelectionDialog - Simple selection dialog.
- KDEDateLabel - An UILabel subclass that updates itself to make time ago's format easier.
- KDInteractiveNavigationController - A UINavigationController subclass that support pop interactive UINavigationBar with hidden or show.
- KMPlaceholderTextView - A UITextView subclass that adds support for multiline placeholder.
- LiquidLoader - Spinner loader components with liquid animation.
- LTJelloSwitch - UISwitch prototype.
- LTMorphingLabel - Graceful morphing effects for UILabel written in Swift.
- MantleModal - A simple modal resource that uses a UIScrollView to allow the user to close the modal by dragging it down.
- Material - Express your creativity with Material, an animation and graphics framework for Google's Material Design and Apple's Flat UI in Swift.
- MaterialKit - Material design components.
- MediumScrollFullScreen - Medium scroll style menubar.
- MICountryPicker - Swift country picker with search option.
- MPParallaxView - Apple TV Parallax effect in Swift.
- MZFormSheetPresentationController - MZFormSheetPresentationController provides an alternative to the native iOS UIModalPresentationFormSheet, adding support for iPhone and additional opportunities to setup controller size and feel form sheet.
- NextGrowingTextView - The next in the generations of 'growing textviews' optimized for iOS 7 and above.
- NVActivityIndicatorView - Collection of nice loading animations.
- Otafuku - Some utility classes to use WKWebView in Swift.
- PageController - Infinite paging controller.
- Panoramic - Panoramic facebook story clone.
- PKHUD - Reimplementation of the Apple HUD.
- PNChart-Swift - A simple and beautiful chart lib with animation.
- PPSwiftGifs - a convenient way to show animated GIF images as a part of iOS GUI.
- Reel search - Option list managed as a reel.
- RubberBandEffect - Recreating Apple’s rubber band effect in Swift.
- SAHistoryNavigationViewController - iOS task manager like UI in UINavigationContoller.
- Sapporo - A cellmodel-driven CollectionView manager for Swift.
- Siren - Inform users when App Store updates are available.
- SKPhotoBrowser - Simple PhotoBrowser/Viewer inspired by facebook, twitter photo browsers written in Swift.
- Sonar - Cool radar-style view
- StarryStars - Display & edit ratings, fully customizable from interface builder.
- SwiftValidator - UIView validation framework.
- SwiftyDrop - Lightweight dropdown message bar in Swift.
- SYBlinkAnimationKit - A blink effect animation framework.
- TagCellLayout - UICollectionView layout for Tags with Left, Center & Right alignments.
- TagListView - Simple but highly customizable iOS tag list view.
- TCDInputView - A custom input view which is displayed when a text field becomes the first responder.
- TextFieldEffects - Several ready to use effects for UITextFields
- TouchVisualizer - Lightweight touch visualization library in Swift. A single line of code and visualize your touches.
- Twinkle - a Swift and easy way to make elements in your iOS app twinkle.
- TZStackView - An iOS9 UIStackView layout component re-implemented for iOS 7 and 8.
Libs to display alert, action sheet, notification, popup.
- AlertKit – Alert with a single line of Swift.
- EZAlertController - Easy Swift UIAlertController.
- GoogleWearAlert - Google Wear Alert style.
- GSAlert - If you want to use UIAlertController, but still need to support iOS 7 this project is for you.
- GSMessage - A simple style messages/notifications for iOS 7+.
- Hokusai - A library for a cool bouncy action sheet.
- Kamagari - Simple UIAlertController builder class in Swift.
- Notie - In-app notification in Swift, with customizable buttons and input text field.
- SCLAlertView - Animated Alert view.
- SweetAlert - Alert system.
- SwiftOverlays - various popups and notifications.
- Whisper - Messages and in-app notification made easy.
- XLActionController - Fully customizable and extensible action sheet controller written in Swift 2.
- Blurable - Apply a Gaussian Blur to any UIView with Swift Protocol Extensions.
- PCLBlurEffectAlert - Swift AlertController with UIVisualeffectview.
- AnimatablePlayButton - Animated Play and Pause Button using CALayer, CAKeyframeAnimation.
- DOFavoriteButton - Cute Animated Button written in Swift.
- Hamburger button transition - Hamburger button transition.
- HamburgerButton - Hamburger button with a slick animation.
- KCFloatingActionButton - Floating Action Button for iOS.
- MIBadgeButton - Notification badge for UIButtons.
- SDevBootstrapButton - Twitter Bootstrap buttons for Swift.
- TVButton - Recreating the cool parallax icons from Apple TV as iOS UIButtons.
- ZFRippleButton - A ripple button animation.
- Eureka - Elegant iOS form builder in swift.
- Former - A fully customizable Swift 2 library for easy creating UITableView based form.
- SwiftForms - form are now easy as 1.2.3!
- SwiftyFORM - Forms that can be validated.
- ENSwiftSideMenu - Sliding side menu.
- FrostedSidebar - Hamburger Menu using Swift and iOS 8 API's.
- GuillotineMenu - Guillotine style menu.
- MediumMenu - A menu based on Medium iOS app.
- Pagemenu - Pagination enabled view controller.
- PagingMenuController - Paging view controller with customizable menu in Swift.
- MenuItemKit -
UIMenuItem
with image and block (closure) support. - XLPagerTabStrip - Android PagerTabStrip for iOS.
- PermissionScope - A Periscope-inspired way to ask for iOS permissions.
- Sorry - Ask for iOS permissions through a single, uniform interface.
- Swift-Prompts - A Swift library to design custom prompts with a great scope of options to choose from.
- BubbleTransition - Bubble transition in an easy way.
- ElasticTransition - An interactive transition that simulates an elastic drag.
- MusicPlayerTransition - Custom interactive transition like Apple Music iOS App. written in Swift.
- PinterestSwift - Pinterest style transition.
- StarWars.iOS - Transition animation to crumble view-controller into tiny pieces.
- AEAccordion - UITableViewController with accordion effect (expand / collapse cells).
- CKTextFieldTableCell - UITableViewCell drop-in replacement with support of UITextField.
- CollapsableTable - Collapsable table view sections with custom section header views.
- folding-cell - Folding cell transition.
- Hakuba - A new way to manage UITableView without the code of UITableViewDelegate and UITableViewDataSource.
- Persei - Animated top menu for UITableView / UICollectionView / UIScrollView written in Swift.
- PullToRefreshSwift - PullToRefresh library.
- Shoyu - Easier way to represent the structure of UITableView.
Some interesting utilities to help you in your projects
- __ - Underscore.js power in your Swift projects.
- ApplicationGroupKit - Share informations betweens your applications and your extensions using group identifier.
- AppVersionMonitor - Monitor iOS app version easily.
- ArrayDiff - a fast, UITableView/UICollectionView-compatible array diffing microframework.
- AwesomeCache - manage cache easy in your Swift project.
- Basis - Pure Declarative Programming in Swift.
- Butterfly - A lightweight library for integrating bug-report and feedback features with shake-motion event.
- CacheIsKing - A light memory caching library with native Swift support (structs/enums/etc.)
- CallbackURLKit - Implementation of x-callback-url (Inter app communication) in swift
- Carlos - A simple but flexible cache.
- Collection Each - add each func to collections.
- Compass — Compass helps you setup a central navigation system for your application.
- Curry - Swift implementations for function currying.
- Device.swift - Super-lightweight library to detect used device.
- Device - Light weight tool for detecting the current device and screen size written in swift.
- Dollar - a lib similar to Lo-Dash or Underscore in Javascript.
- EVURLCache - if you want to make your app still works when it's offline.
- ExSwift - a set of Swift extensions for standard types and classes.
- EZSwiftExtensions - 😏 How Swift standard types and classes were supposed to work.
- Focus - an Optics library for Swift (where Optics includes Lens, Prisms, and Isos) that is inspired by Haskell's Lens library.
- Funky - Functions and operators for functional programming in Swift.
- Honour - Simple and powerful Validation Library.
- Hookah - Hookah is a functional library for Swift.
- Inflection - The Optimus Prime of string inflection.
- Lambdatron - Clojure(ish) interpreter in Swift.
- LlamaKit - Collection of must-have functional Swift tools.
- Mendel - Swift miliframework for implementing evolutionary/genetic algorithms.
- Money - Currency formatter in Swift.
- Oriole - A functional utility belt implemented as Swift 2.0 protocol extensions.
- PDFGenerator - A simple Generator of PDF in Swift. Generate PDF from view(s) or image(s).
- Pitchy - A simple way to get a music pitch from a frequency.
- Pluralize.swift - Great Swift String Pluralize Extension.
- Popsicle - Delightful, extensible Swift value interpolation framework.
- Prelude - Swift µframework of simple functional programming tools.
- protobuf-swift - ProtocolBuffers for Swift.
- Prototope - Swift library of lightweight interfaces for prototyping, bridged to JS.
- Pythonic.swift - Pythonic tool-belt for Swift: a Swift implementation of selected parts of Python standard library.
- R.swift - Tool to get strong typed, autocompleted resources like images, cells and segues.
- RandomKit - Random data generation in Swift.
- ReactiveArray - An array class implemented in Swift that can be observed using ReactiveCocoa's Signals.
- Result - Swift type modelling the success/failure of arbitrary operations.
- Runes - Functional operators for Swift - flatMap, map, apply, pure.
- seguecode - seguecode is a support tool that provides compile-time safeties around building with UIStoryboards by exporting code regarding Scenes, Segues, Table and Collection Views and more.
- SimplePDF - Create a simple PDF effortlessly.
- SpecificationPattern - chainable rules useful for form validation.
- SpriteKit+Spring - SpriteKit API reproducing UIView's spring animations with SKAction.
- Stream - Lazy streams in Swift.
- Sugar - Something sweet that goes great with your Cocoa.
- Swift Sugar - objsugar ported to Swift.
- Swift-AI - A high-performance AI and Machine Learning library written entirely in Swift.
- SwiftBitmask -
Bitmask<T>
type intended as a replacement forRawOptionSet
. - SwiftExP - Pure Swift 2.0 S-expression Parser.
- SwiftGen-Storyboard - A tool to auto-generate Swift
enums
for all your Storyboards, Scenes and Segues constants + appropriate convenience accessors. - SwiftMemCache - Swift Memory Cache with namespace & TTL support.
- SwiftRandom - A tiny generator of random data for swift.
- SwiftRouter - A URL Router for iOS written in Swift 2.0
- SwiftSequence - A μframework of extensions for SequenceType in Swift 2.0, inspired by Python's itertools.
- SwiftSortUtils - Useful functions and extensions for sorting in Swift.
- SwiftValidators - String validation for iOS developed in Swift (inspired by validator.js).
- Swiftx - Functional data types and functions for any project.
- SwiftyStateMachine - Swift µframework for creating state machines.
- Swiftz - Functional programming in Swift.
- Then - ✨ Super sweet syntactic sugar for Swift initializers.
- undefined - Nano framework which defines Haskell's undefined in Swift.
- Versions - Helping you find inner peace when comparing version numbers in Swift.
- VersionsTracker - Keeping track of version installation history including dates.
- VersionTrackerSwift - Track which versions of your app a user has previously installed. Available for iOS, OS X and tvOS.
- Wyrd - Asynchronous programming in Swift made easy. Wyrd is inspired by Promises/A+.
- Player - iOS video player in Swift, simple drop in component for playing and streaming media.
Miscellaneous Swift related projects
- InteractivePlayground - A playground exploring the interactivity of Xcode 7.3 playgrounds.
- MAIKit - A framework for sharing code between iOS and OS X.
- sbconstants - A nifty tool to generate constants file by grabbing identifiers from storyboards in a Swift project.
- swift-compiler-crashes - A collection of test cases crashing the Swift compiler.
- SwiftGen - A suite of tools written in Swift to auto-generate Swift code for various assets of your project.
- SwiftHub - A universal app you can use to browse the newest Swift repositories on Github.
- swiftier - Quick-and-dirty Objective-C to Swift translator.
Tools for Swift development
- generator-swift-framework - Scaffolds out a Xcode framework project based on Swift 2.0.
- swamp - Icon stamping in Swift.
Generate documentation for Swift code
- jazzy - Soulful docs for Swift & Objective-C.
- swiftdoc-parser - SwiftDoc.org header parsing and HTML generating utilities.