A collaborative list of awesome Swift resources, inspired by awesome-python and listed on awesome-awesomeness.
Feel free to contribute!
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.
- 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.
- firefox-ios - firefox for iOS being developed by Mozilla.
- Federal Open Data - Get federal Open Data using the Federal Data SDK
- FlappySwift - flappy bird clone in Swift.
- HackerNews - hackernews reader app written in Swift.
- HausClock - chess stile clock app in Swift.
- HomeKitDemo - homekit demo app;
- HackerNewsClient-iOS - hackernews client in Swift
- iContactU - delivered on Apple Store: reminds you to contact people you ought to.
- KeychainDemo - keychain sharing between an App and it's share extension
- LayerPlayer - explores CALayer and subclasses; written in Swift; also on App Store
- 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.
- Round & Split - a tip calculator in Swift
- Stick Hero Swift - an universal spritekit based game 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.
- TextEthan - a clone of TextEthan, a messaging app that allows anyone to message you
- Task - a task app written in Swift that is published in the app store.
- The Oakland Post - a full-fledged, 100%-Swift (minus dependencies) news reader.
- 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.
A list of OSX Swift demo apps
- Allkdic - a status bar dictionary.
- clock-saver - a clock screen saver for osx written in Swift.
- 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)
- Swifter - http server written in Swift.
Dependency manager software for Swift.
- carthage - a new dependency manager for Swift.
- cocoapods - the most used dependency manager for Objective-C (Swift is still in porting).
An awesome list of Swift related guides.
- Apple Swift Guide - Official guide by Apple about swift.
- Apple eBook - Official Apple eBook for swift beginners.
- A better way to learn Swift - Learn Swift in a different way.
- Apple eBook - Official Apple eBook for Swift beginners.
- Developing iOS 8 Apps with Swift - Stanford course by Paul Hegarty.
- Learn Swift - a collection of tuts that will help you learning Swift via playground.
- Natasha the Robot - Weekly Newsletter on learning Swift
- objc.io snippets - Short, weekly snippets showing off Swift features
- Practice Swift - an interesting guide to learn Swift.
- 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.
- Swift Tips - Swift tips collection.
- Swift-Weekly - Weekly Swift Language Gems, Tips and Tricks
- 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.
Support for your favorite editors.
- swift-vim - play Swift with vim editor.
- vim-swift - adds Swift support to vim. It covers syntax, indenting, and more.
- vim-polyglot - language pack for vim that includes vim-swift.
Here you can find a list of snippets and libs for your Swift projects.
Libs to help with animation
- 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.
- Presentation - A Swift library to help you to make tutorials, release notes and animated pages.
- Spring - A library to simplify iOS animations in Swift.
Libs to work with audio
- AudioPlayer - A wrapper around AVPlayer with some cool features.
- MusicKit - A framework for composing and transforming music in Swift
Quick libs to get access to third party API services
- 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.
- Typhoon - Dependency injection toolkit in Swift.
Interesting snippets related to color management and utility.
- [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.
- 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.
- UIColor-Hex-Swift - Hex to UIcolor converter.
- UIColorWDUtils - Extension for Hex RGB(A).
Deal with cryptography method easily in Swift
- CryptoSwift - add crypto lib support to Swift.
- SwiftSSL - add crypto toolkit in Swift.
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.
- CoreStore - simple and elegant way to handle CoreData in Swift.
- JSQCoreDataKit - A swifter Core Data stack.
- 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.
- QueryKit - an easy way to play with coredata filtering within your Swift projects.
- Realm - Realm is a mobile database: a replacement for Core Data & SQLite http://realm.io
Struggling using json data? Here are some interesting ways to handle it.
- AlamofireObjectMapper - An Alamofire extension which converts JSON response data into swift objects using ObjectMapper.
- Argo - Json parsing library
- Himotoki - A type-safe JSON decoding library purely written in Swift.
- json-swift - A basic library for working with JSON in Swift.
- JSONHelper - lightning fast JSON deserialization and value conversion library for iOS & OS X written in Swift.
- ObjectMapper - JSON object mapper.
- Pistachio - Generic model framework for Swift.
- PPJSONSerialization - Convert JSON string to Swift Class
- SwiftyJSON - A lib for JSON in Swift with error handling.
- SwiftMapper - JSON Mapper.
- SwiftJSONParser - JSON parser.
- yaml.swift - Load YAML and JSON documents using Swift.
Are you interested in storing your app data using SQLite? Here are some interesting resources.
- SQLite.swift - A pure Swift framework wrapping SQLite3. Small. Simple. Safe.
- SQLiteDB - sqlite wrapper for Swift.
- SwiftData - simple and Effective SQLite Handling in Swift.
If you prefer to manage XML data formatted entries, here are some helpful libs
Handle data formatting easily.
- AFDateHelper - Simple date helper.
- 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.
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
- DeLorean - A Functional Reactive Programming kit.
- EmitterKit - an implementation of event emitters and listeners in swift.
- Future - A micro framework providing Future<T, Error>
- FutureKit - A Swift based Future/Promises Library.
- PromiseKit - async promise programming lib.
- PureFutures - Futures and Promises library
- Safe - A modern concurrency and synchronization for Swift.
- Signals - replaces delegates and notifications.
- SwiftEventBus - A publish/subscribe event bus optimized for iOS.
- ReactKit - Swift Reactive Programming.
- RxSwift - Microsoft Reactive Extensions (Rx) for Swift and iOS/OSX platform.
A collection of font related snippets.
- Font-Awesome - Use Font Awesome in project written in Swift.
- FontBlaster - Programmatically load custom fonts into your iOS app.
- GoogleMaterialDesignIcons - google Material Design Icons Font for iOS.
- MCFontAwesome - fontawesome porting for Swift.
- SwiftFonts - render all the supported fonts in Swift.
- OpenSansSwift - OpenSans for Swift.
- SDevIconFonts - Fontawesome, Iconic, Ionicons, Octicon porting for Swift.
- DBPathRecognizer - db path recognizer for letters.
Interested in using iBeacon in your Swift project? Here some interesting resources.
- iBeacon - iBeacon implementation in Swift.
An interesting list of image related libs..
- CYFastImage - display images from web.
- DePict - functional wrapper for CoreGraphics
- gifu - highly performant animated GIF support for iOS in Swift.
- 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.
- PASImageView - async remote download your image and round them. automatically.
- SwiftColorArt - font schema generator according image colours.
- SwiftGif - A small UIImage extension with gif support
- Toucan - Image processing api
- UIImageView-BetterFace-Swift - autoresize images and if any face discovered refine the position of the image.
Do you want to create your own customized keyboard? Here are some interesting resources
- Hodor Keyboard - poc for custom keyboard implementation.
Libs to help you with layout.
- ManualLayout - Easy to use and flexible AutoLayout alternative for iOS 8+. Supports AsyncDisplayKit.
- SwiftBox - Flexbox in Swift, using Facebook's css-layout.
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.
- 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.
- Snappy - a light-weight layout framework which wraps AutoLayout with nicer syntax.
- SwiftAutoLayout - a small DSL for autolayout.
- Swiftstraints - Powerful auto-layout framework that lets you write constraints in one line of code.
- 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
- Swifternalization - Localize apps using e.g. regular expressions in Localizable.strings.
Utilities for writing to and reading from the device log
- CleanroomASL — a low-level Swift API for writing to and reading from the Apple System Log daemon
- CleanroomLogger — a configurable and extensible high-level logging API that is simple, lightweight and performant
- GEOSwift - The Swift Geographic Engine, make it easier to work with geographic models and calculate intersections, overlapping, projections etc.
- Easy-Cal-Swift - Overload +-*/ operator for Swift, make it easier to use (and not so strict).
- Surge - Accelerate framework for Swift.
- swix - A general matrix language.
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.
- GRequest - http request handler.
- IJReachability - check for network connection availability.
- Just - HTTP for Humans (a python-requests style HTTP library in Swift)
- ModestProposal - an HTTP toolbox.
- Moya - network abstraction layer.
- Net - an httprequest wrapper.
- 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.
- RSNetworking - Network library written purely in Swift.
- Socket.IO - Socket.IO client for iOS/OS X.
- SocketIO-Kit - Socket.io iOS and OSX Client.
- Stargate - A communication channel from your Mac to your watch.
- Starscream - websockets implementation in Swift.
- SwiftHTTP - NSURLSession wrapper.
- SwiftSocket - simple TCP socket library.
- SwiftWebSocket - A high performance WebSocket client library for Swift.
- Transporter - A tiny library makes uploading and downloading easier.
- YYHRequest-Swift - http request in async.
- SwiftFormat - Auto formatting Swift code, similar to Clang format.
- SwiftLint - An experimental tool to enforce Swift style and conventions.
- iOS-TouchID-Swift - TouchID for Swift.
- JMEasyTouchID - TouchID one line wrapper.
- KeychainAccess - Simple Swift wrapper for Keychain that works on iOS and OS X.
- KeyClip - Keychain framework for iOS written in Swift.
- SwiftKeychainWrapper - a simple static wrapper for the iOS Keychain to allow you to use it in a similar fashion to user defaults.
Manage your device sensors in a faster and easier way
- MotionKit - iOS device sensors wrapper
A collection of testing frameworks.
- DVR - A simple network testing framework for Swift.
- OHHTTPStubs - A testing library designed to stub your network requests easily.
- Mockingjay - An elegant library for stubbing HTTP requests with ease in Swift.
- Quick - Quick is a behavior-driven development framework for Swift and Objective-C.
- Sleipnir - BDD-style framework for Swift.
- SwiftCheck - A testing library that automatically generates random data for testing program properties.
- Swiftest - experimental BDD-style framework.
A collection of text projects.
- Regex - Swift wrapper class for
NSRegularExpression
. Includes amap()
override and an operator (=~
) for a more Swift-like API. - PySwiftyRegex - Easily deal with Regex in Swift in a Pythonic way.
- SyntaxKit - TextMate-style syntax highlighting.
A collection of pre-packaged transitions & cool ui stuffs.
- Adaptive Tab Bar - Adaptive tab bar.
- AIFlatSwitch - Flat animated switch.
- BreakOutToRefresh - A playable pull to refresh view using SpriteKit
- BWWalkthrough - A class to build custom walkthroughs for your iOS App.
- BubbleTransition - Bubble transition in a easy way.
- CharacterText - Perform fx on UILabel.
- ENSwiftSideMenu - Sliding side menu.
- Dodo - A message bar for iOS written in Swift.
- Few.swift - Views as functions of their state.
- 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.
- FrostedSidebar - Hamburger Menu using Swift and iOS 8 API's.
- GaugeKit - Customizable gauges. Easy reproduce Apple's style gauges.
- Geometry - extensions for UIView.
- GIFRefreshControl - A pull to refresh that supports GIF images as track animations.
- GoogleWearAlert - Google Wear Alert style.
- GRMustache - Flexible Mustache templates for Swift.
- GuillotineMenu - Guillotine style menu.
- Hakuba - A new way to manage UITableView without the code of UITableViewDelegate and UITableViewDataSource.
- HamburgerButton - Hamburger button with a slick animation.
- Hamburger button transition - Hamburger button transition.
- ImagePickerSheetController - A component that replicates the custom photo action sheet in iMessage.
- ios-charts - An iOS port of the beautiful MPAndroidChart.
- JTToast - Toast for Swift.
- LTMorphingLabel - Graceful morphing effects for UILabel written in Swift.
- LTJelloSwitch - UISwitch prototype.
- KDEDateLabel - An UILabel subclass that updates itself to make time ago's format easier.
- KMPlaceholderTextView - A UITextView subclass that adds support for multiline placeholder.
- MaterialKit - Material design components.
- MediumScrollFullScreen - Medium scroll style menubar.
- [MIBadgeButton] (https://github.com/mustafaibrahim989/MIBadgeButton-Swift) - Notification badge for UIButtons
- Pagemenu - Pagination enabled view controller.
- PagingMenuController - Paging view controller with customizable menu in Swift.
- Panoramic - Panoramic facebook story clone.
- Persei - Animated top menu for UITableView / UICollectionView / UIScrollView written in Swift.
- PinterestSwift - Pinterest style transition.
- 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.
- PullToRefreshSwift - PullToRefresh library.
- 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.
- SCLAlertView - Animated Alert view.
- SDevBootstrapButton - Twitter Bootstrap buttons for Swift
- Siren - Inform users when App Store updates are available.
- Swift-Prompts - A Swift library to design custom prompts with a great scope of options to choose from.
- SweetAlert - Alert system.
- SwiftOverlays - various popups and notifications.
- SwiftValidator - UIView validation framework.
- SwiftyDrop - Lightweight dropdown message bar in Swift.
- SwiftyFORM - Forms that can be validated.
- TagListView - Simple but highly customizable iOS tag list view.
- TextFieldEffects - Several ready to use effects for UITextFields
- Twinkle - a Swift and easy way to make elements in your iOS app twinkle.
- ZFRippleButton - A ripple button animation.
Some interesting utilities to help you in your projects
- Basis - Pure Declarative Programming in Swift
- BrightFutures - promise and future lib for Swift.
- __ - Underscore.js power in your Swift projects.
- AAWindow - UIWindow subclass to enable behavior like adaptive round-corners & detecting when Control Center is opened.
- AlertKit – Alert with a single line of Swift.
- 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)
- AwesomeCache - manage cache easy in your Swift project.
- Butterfly - A lightweight library for integrating bug-report and feedback features with shake-motion event.
- Chronos- Grand Central Dispatch Utilities.
- CLIKit - a way to create cli with Swift.
- Collection Each - add each func to collections.
- CommandLine - A pure Swift library for creating command-line interfaces
- DBPathRecognizer - Gesture recognizer tool.
- Dispatcher - Queues, timers, and task groups in Swift
- Dollar - a lib similar to Lo-Dash or Underscore in Javascript.
- ExSwift - a set of Swift extensions for standard types and classes.
- Forbind - Functional chaining and Promises in Swift
- Funky - Functions and operators for functional programming in Swift.
- GCD - A wrapper of Grand Central Dispatch written in Swift
- Honour - Simple and powerful Validation Library
- Lambdatron - Clojure(ish) interpreter in Swift.
- LlamaKit - Collection of must-have functional Swift tools.
- Mendel - Swift miliframework for implementing evolutionary/genetic algorithms.
- PermissionScope - A Periscope-inspired way to ask for iOS permissions.
- protobuf-swift - ProtocolBuffers for Swift.
- Prototope - Swift library of lightweight interfaces for prototyping, bridged to JS.
- Puree - A log collector for iOS
- Pythonic.swift - Pythonic tool-belt for Swift: a Swift implementation of selected parts of Python standard library.
- Result - Swift type modelling the success/failure of arbitrary operations.
- Runes - Functional operators for Swift - flatMap, map, apply, pure
- SpecificationPattern - chainable rules useful for form validation.
- SpriteKit+Spring - SpriteKit API reproducing UIView's spring animations with SKAction.
- Stream - Lazy streams in Swift.
- swamp - Icon stamping in Swift.
- Swell - a logging utility for Swift.
- SwiftBitmask -
Bitmask<T>
type intended as a replacement forRawOptionSet
. - SwiftColors - HEX color handling as an extension for UIColor.
- SwiftExP - Pure Swift 2.0 S-expression Parser
- SwiftForms - form are now easy as 1.2.3!
- SwiftMemCache - Swift Memory Cache with namespace & TTL support.
- SwiftyStateMachine - Swift µframework for creating state machines.
- SwiftyUserDefaults — a cleaner, nicer syntax for NSUserDefaults
- Swiftz - a lib for functional programming.
- Swift Sugar - objsugar ported to Swift.
- undefined - Nano framework which defines Haskell's undefined in Swift.
- Versions - Helping you find inner peace when comparing version numbers in Swift.
- Wyrd - Asynchronous programming in Swift made easy. Wyrd is inspired by Promises/A+.
- XCGLogger - a lib that help you handling better debug logging.
- Player - iOS video player in Swift, simple drop in component for playing and streaming media.
Would you like host a webserver in your device? Here you can find how to do it.
- NetworkObjects - REST HTTP Server written in Swift. Builds REST API from Core Data.
- swifter - Http server written in Swift with routing handler.
- XcodeServerSDK - Access Xcode Server API with native Swift objects.
Miscellaneous Swift related projects
- swift-compiler-crashes - A collection of test cases crashing the Swift compiler
- swiftier - Quick-and-dirty Objective-C to Swift translator.
- SwiftInFlux — List of things that are "in flux" in Swift + changelog of the language
Tools for Swift development
Generate documentation for Swift code
- jazzy - Soulful docs for Swift & Objective-C
- swiftdoc-parser - Header parsing and HTML generating utilities for SwiftDoc.org