Skip to content

A curated list of awesome iOS ecosystem, including Objective-C and Swift Projects

License

Notifications You must be signed in to change notification settings

SidAg26/awesome-ios

 
 

Repository files navigation

Awesome

awesome Buy Me a Coffee

This project is supported by:

Contributing and Collaborating

Please see CONTRIBUTING and CODE-OF-CONDUCT for details.

Contents

Analytics

Analytics platforms, SDK's, error tracking and real-time answers about your app

  • Aptabase - Open Source, Privacy-First and Simple Analytics for Swift Apps.
  • Answers by Fabric - Answers gives you real-time insight into people’s experience in your app.
  • Bugsnag - Error tracking with a free tier. Error reports include data on device, release, user, and allows arbitrary data.
  • Countly - Open source, mobile & web analytics, crash reports and push notifications platform for iOS & Android.
  • devtodev - Comprehensive analytics service that improves your project and saves time for product development.
  • Emerge Tools - Prevent app size & performance regressions on every pull request, get automated insights on how to improve.
  • Instabug - In-app feedback, Bug and Crash reporting, Fix Bugs Faster through user-steps, video recordings, screen annotation, network requests logging.
  • Matomo - The MatomoTracker is an iOS, tvOS and macOS SDK for sending app analytics to a Matomo server.
  • Mixpanel - Advanced analytics platform.
  • MOCA Analytics - Paid cross-platform analytics backend.
  • Segment - The hassle-free way to integrate analytics into any iOS application.
  • Sentry - Sentry provides self-hosted and cloud-based error monitoring that helps all software teams discover, triage, and prioritize errors in real-time.
  • Shake - In-app feedback and bug reporting tool. Fix app bugs up to 50x faster with detailed device data, repro steps, video recording, black box data, network requests and custom logging.

App Routing

Elegant URL routing, navigation frameworks, deep links and more

  • ApplicationCoordinator - Coordinator is an object that handles navigation flow and shares flow’s handling for the next coordinator after switching on the next chain.
  • Appz - Easily launch and deeplink into external applications, falling back to web if not installed.
  • Composable Navigator - An open source library for building deep-linkable SwiftUI applications with composition, testing and ergonomics in mind
  • Crossroad - Crossroad is an URL router focused on handling Custom URL Schemes. Using this, you can route multiple URL schemes and fetch arguments and parameters easily.
  • DeepLinkKit - A splendid route-matching, block-based way to handle your deep links.
  • JLRoutes - URL routing library for iOS with a simple block-based API.
  • Linker - Lightweight way to handle internal and external deeplinks for iOS.
  • LiteRoute - Easy transition between VIPER modules, implemented on pure Swift.
  • Marshroute - Marshroute is an iOS Library for making your Routers simple but extremely powerful.
  • RouteComposer - Library that helps to handle view controllers composition, routing and deeplinking tasks.
  • Router - Simple Navigation for iOS.
  • RxFlow - Navigation framework for iOS applications based on a Reactive Flow Coordinator pattern.
  • SwiftCurrent - A library for managing complex workflows.
  • SwiftRouter - A URL Router for iOS.
  • URLNavigator - Elegant URL Routing for Swift
  • WAAppRouting - iOS routing done right. Handles both URL recognition and controller displaying with parsed parameters. All in one line, controller stack preserved automatically!
  • ZIKRouter - An interface-oriented router for discovering modules and injecting dependencies with protocol in OC & Swift, iOS & macOS. Handles route in a type safe way.

App Store

Apple Guidelines and version notification libraries

  • Apple Review Guidelines - Highlighted some of the most common issues that cause apps to get rejected.
  • Free App Store Optimization Tool - Lets you track your App Store visibility in terms of keywords and competitors.
  • Siren - Notify users when a new version of your app is available and prompt them to upgrade.

back to top

Apple TV

tvOS view controllers, wrappers, template managers and video players.

  • FocusTvButton - Light wrapper of UIButton that allows extra customization for tvOS
  • ParallaxView - iOS controls and extensions that add parallax effect to your application.
  • Swift-GA-Tracker-for-Apple-tvOS - Google Analytics tracker for Apple tvOS provides an easy integration of Google Analytics’ measurement protocol for Apple TV.
  • TvOSCustomizableTableViewCell - Light wrapper of UITableViewCell that allows extra customization for tvOS.
  • TvOSMoreButton - A basic tvOS button which truncates long text with '... More'.
  • TvOSPinKeyboard - PIN keyboard for tvOS.
  • TvOSScribble - Handwriting numbers recognizer for Siri Remote.
  • TvOSSlider - TvOSSlider is an implementation of UISlider for tvOS.
  • TvOSTextViewer - Light and scrollable view controller for tvOS to present blocks of text
  • XCDYouTubeKit - YouTube video player for iOS, tvOS and macOS.

Architecture Patterns

Clean architecture, Viper, MVVM, Reactive... choose your weapon.

  • Clean Architecture for SwiftUI + Combine - A demo project showcasing the production setup of the SwiftUI app with Clean Architecture.
  • CleanArchitectureRxSwift - Example of Clean Architecture of iOS app using RxSwift.
  • ios-architecture - A collection of iOS architectures - MVC, MVVM, MVVM+RxSwift, VIPER, RIBs and many others.
  • iOS-Viper-Architecture - This repository contains a detailed sample app that implements VIPER architecture in iOS using libraries and frameworks like Alamofire, AlamofireImage, PKHUD, CoreData etc.
  • Reactant - Reactant is a reactive architecture for iOS.
  • Spin - A universal implementation of a Feedback Loop system for RxSwift, ReactiveSwift and Combine
  • SwiftyVIPER - Makes implementing VIPER architecture much easier and cleaner.
  • Tempura - A holistic approach to iOS development, inspired by Redux and MVVM.
  • The Composable Architecture - The Composable Architecture is a library for building applications in a consistent and understandable way, with composition, testing, and ergonomics in mind.
  • VIPER Module Generator - A Clean VIPER Modules Generator with comments and predfined functions.
  • Viperit - Viper Framework for iOS. Develop an app following VIPER architecture in an easy way. Written and tested in Swift.

back to top

ARKit

Library and tools to help you build unparalleled augmented reality experiences

  • ARHeadsetKit - High-level framework for using $5 Google Cardboard to replicate Microsoft Hololens.
  • ARKit-CoreLocation - Combines the high accuracy of AR with the scale of GPS data.
  • ARKit Emperor - The Emperor give you the most practical ARKit samples ever.
  • ARKit Virtual Objects - Placing Virtual Objects in Augmented Reality.
  • ARVideoKit - Record and capture ARKit videos, photos, Live Photos, and GIFs.
  • Placenote - A library that makes ARKit sessions persistent to a location using advanced computer vision.
  • SmileToUnlock - This library uses ARKit Face Tracking in order to catch a user's smile.

back to top

Authentication

Oauth and Oauth2 libraries, social logins and captcha tools.

  • Heimdallr.swift - Easy to use OAuth 2 library for iOS, written in Swift.
  • InstagramSimpleOAuth - A quick and simple way to authenticate an Instagram user in your iPhone or iPad app.
  • LinkedInSignIn - Simple view controller to login and retrieve access token from LinkedIn.
  • OAuthSwift - Swift based OAuth library for iOS- OAuthSwift - Swift based OAuth library for iOS
  • OAuth2 - OAuth2 framework for macOS and iOS, written in Swift.
  • ReCaptcha - (In)visible ReCaptcha for iOS.
  • SwiftyOAuth - A simple OAuth library for iOS with a built-in set of providers.

back to top

Blockchain

Tool for smart contract interactions. Bitcoin protocol implementations and Frameworks for interacting with cryptocurrencies.

  • BitcoinKit - Bitcoin protocol toolkit for Swift, BitcoinKit implements Bitcoin protocol in Swift. It is an implementation of the Bitcoin SPV protocol written in swift.
  • CoinpaprikaAPI - Coinpaprika API client with free & frequently updated market data from the world of crypto: coin prices, volumes, market caps, ATHs, return rates and more.
  • EthereumKit - EthereumKit is a free, open-source Swift framework for easily interacting with the Ethereum.
  • EtherWalletKit - Ethereum Wallet Toolkit for iOS - You can implement Ethereum wallet without a server and blockchain knowledge.
  • Web3.swift - Web3 library for interacting with the Ethereum blockchain.

back to top

Books

Most recommended books

back to top

Cache

Thread safe, offline and high performance cache libs and frameworks.

  • Awesome Cache - Delightful on-disk cache (written in Swift).
  • Cache - Nothing but Cache.
  • Cache - Swift caching library.
  • Cachyr - A small key-value data cache for iOS, macOS and tvOS, written in Swift.
  • Carlos - A simple but flexible cache.
  • Disk - Delightful framework for iOS to easily persist structs, images, and data.
  • HanekeSwift - A lightweight generic cache for iOS written in Swift with extra love for images.
  • Johnny - Melodic Caching for Swift.
  • mattress - iOS Offline Caching for Web Content.
  • MemoryCache - MemoryCache is type-safe memory cache.
  • PINCache - Fast, non-deadlocking parallel object cache for iOS and macOS.
  • RocketData - A caching and consistency solution for immutable models.
  • SPTPersistentCache - Everyone tries to implement a cache at some point in their iOS app’s lifecycle, and this is ours. By Spotify.
  • Track - Track is a thread safe cache write by Swift. Composed of DiskCache and MemoryCache which support LRU.
  • UITableView Cache - UITableView cell cache that cures scroll-lags on a cell instantiating.
  • YYCache - High performance cache framework for iOS.

back to top

Charts

Beautiful, Easy and Fully customized charts

  • Charts - A powerful chart / graph framework, the iOS equivalent to MPAndroidChart.
  • PNChart - A simple and beautiful chart lib used in Piner and CoinsMan for iOS.
  • XJYChart - A Beautiful chart for iOS. Support animation, click, slide, area highlight.
  • JBChartView - iOS-based charting library for both line and bar graphs.
  • XYPieChart - A simple and animated Pie Chart for your iOS app.
  • TEAChart - Simple and intuitive iOS chart library. Contribution graph, clock chart, and bar chart.
  • EChart - iOS/iPhone/iPad Chart, Graph. Event handling and animation supported.
  • FSLineChart - A line chart library for iOS.
  • chartee - A charting library for mobile platforms.
  • ANDLineChartView - ANDLineChartView is easy to use view-based class for displaying animated line chart.
  • TWRCharts - An iOS wrapper for ChartJS. Easily build animated charts by leveraging the power of native Obj-C code.
  • SwiftCharts - Easy to use and highly customizable charts library for iOS.
  • FlowerChart - Flower-shaped chart with custom appearance animation, fully vector.
  • Scrollable-GraphView - An adaptive scrollable graph view for iOS to visualise simple discrete datasets. Written in Swift.
  • Dr-Charts - Dr-Charts is a highly customisable, easy to use and interactive chart / graph framework in Objective-C.
  • Graphs - Light weight charts view generator for iOS.
  • FSInteractiveMap - A charting library to visualize and interact with a vector map on iOS. It's like Geochart but for iOS.
  • JYRadarChart - An iOS open source Radar Chart implementation.
  • TKRadarChart - A customizable radar chart in Swift.
  • MagicPie - Awesome layer based pie chart. Fantastically fast and fully customizable. Amazing animations available with MagicPie.
  • PieCharts - Easy to use and highly customizable pie charts library for iOS.
  • CSPieChart - iOS PieChart Opensource. This is very easy to use and customizable.
  • DDSpiderChart - Easy to use and customizable Spider (Radar) Chart library for iOS written in Swift.
  • core-plot - a 2D plotting lib which is highly customizable and capable of drawing many types of plots.
  • ChartProgressBar - Draw a chart with progress bar style.
  • SMDiagramViewSwift - Meet cute and very flexibility library for iOS application for different data view in one circle diagram.
  • Swift LineChart - Line Chart library for iOS written in Swift.
  • SwiftChart - Line and area chart library for iOS.
  • EatFit - Eat fit is a component for attractive data representation inspired by Google Fit.
  • CoreCharts - CoreCharts is a simple powerful yet Charts library for apple products.

back to top

Code Injection

Decrease development time with these tools

  • Inject - Hot Reloading for Swift applications!
  • injectionforxcode - Code injection including Swift.
  • Vaccine - Vaccine is a framework that aims to make your apps immune to recompile-decease.

back to top

Code Quality

Quality always matters. Code checkers, memory vigilants, syntax sugars and more.

  • Aardvark - Aardvark is a library that makes it dead simple to create actionable bug reports.
  • Bootstrap - iOS project bootstrap aimed at high quality coding.
  • Bugsee - In-app bug and crash reporting with video, logs, network traffic and traces.
  • FBRetainCycleDetector - iOS library to help detecting retain cycles in runtime.
  • HeapInspector-for-iOS - Find memory issues & leaks in your iOS app without instruments.
  • KZAsserts - Asserts on roids, test all your assumptions with ease.
  • MLeaksFinder - Find memory leaks in your iOS app at develop time.
  • PSTModernizer - Makes it easier to support older versions of iOS by fixing things and adding missing methods.
  • spacecommander - Commit fully-formatted Objective-C code as a team without even trying.
  • SwiftCop - SwiftCop is a validation library fully written in Swift and inspired by the clarity of Ruby On Rails Active Record validations.
  • SwiftFormat - A code library and command-line formatting tool for reformatting Swift code.
  • Tailor - Cross-platform static analyzer for Swift that helps you to write cleaner code and avoid bugs.
  • WeakableSelf - A Swift micro-framework to encapsulate [weak self] and guard statements within closures.

back to top

Linter

Static code analyzers to enforce style and conventions.

  • AnyLint - Lint anything by combining the power of Swift & regular expressions.
  • IBLinter - A linter tool for Interface Builder.
  • OCLint - Static code analysis tool for improving quality and reducing defects.
  • Swiftlint - A tool to enforce Swift style and conventions.

back to top

Color

Hex color extensions, theming, color pickers and other awesome color tools.

  • BCColor - A lightweight but powerful color kit (Swift).
  • ChromaColorPicker - An intuitive iOS color picker built in Swift.
  • Colours - A beautiful set of predefined colors and a set of color methods to make your iOS/macOS development life easier.
  • CostumeKit - Base types for theming an app.
  • CSS3ColorsSwift - A UIColor extension with CSS3 Colors name.
  • DynamicColor - Yet another extension to manipulate colors easily in Swift.
  • FlatUIColors - Flat UI color palette helpers written in Swift.
  • Gestalt - An unintrusive & light-weight iOS app-theming library with support for animated theme switching.
  • Hue - Hue is the all-in-one coloring utility that you'll ever need.
  • Lorikeet - Aesthetic color-scheme generation written in Swift.
  • PFColorHash - Generate color based on the given string.
  • 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.
  • SheetyColors - An action sheet styled color picker for iOS.
  • SwiftHEXColors - HEX color handling as an extension for UIColor.
  • UIColor-Hex-Swift - Convenience method for creating autoreleased color using RGBA hex string.

back to top

Command Line

Smart, beautiful and elegant tools to help you create command line applications.

  • Swiftline - Swiftline is a set of tools to help you create command line applications.
  • Commander - Compose beautiful command line interfaces in Swift.
  • ColorizeSwift - Terminal string styling for Swift.
  • Guaka - The smartest and most beautiful (POSIX compliant) Command line framework for Swift.
  • Marathon - Marathon makes it easy to write, run and manage your Swift scripts.
  • CommandCougar - An elegant pure Swift library for building command line applications.
  • Crayon - Terminal string styling with expressive api and 256/TrueColor support.
  • SwiftShell - A Swift framework for shell scripting and running shell commands.
  • SourceDocs - Command Line Tool that generates Markdown documentation from inline source code comments.
  • ModuleInterface - Command Line Tool that generates the Module's Interface from a Swift project.

back to top

Concurrency

Job schedulers, Coroutines, Asynchronous and Type safe threads libs and frameworks written in Swift

  • Venice - CSP (Coroutines, Channels, Select) for Swift.
  • Concurrent - Functional Concurrency Primitives.
  • Flow - Operation Oriented Programming in Swift.
  • Brisk - A Swift DSL that allows concise and effective concurrency manipulation.
  • Aojet - An actor model library for swift.
  • Overdrive - Fast async task based Swift framework with focus on type safety, concurrency and multi threading.
  • AsyncNinja - A complete set of concurrency and reactive programming primitives.
  • Kommander - Kommander is a Swift library to manage the task execution in different threads. Through the definition a simple but powerful concept, Kommand.
  • Threadly - Type-safe thread-local storage in Swift.
  • Flow-iOS - Make your logic flow and data flow clean and human readable.
  • Queuer - A queue manager, built on top of OperationQueue and Dispatch (aka GCD).
  • SwiftQueue - Job Scheduler with Concurrent run, failure/retry, persistence, repeat, delay and more.
  • GroupWork - Easy concurrent, asynchronous tasks in Swift.
  • StickyLocking - A general purpose embedded hierarchical lock manager used to build highly concurrent applications of all types.
  • SwiftCoroutine - Swift coroutines library for iOS and macOS.

back to top

Core Data

Core data Frameworks, wrappers, generators and boilerplates.

  • Ensembles - A synchronization framework for Core Data.
  • Mogenerator - Automatic Core Data code generation.
  • MagicalRecord - Super Awesome Easy Fetching for Core Data.
  • CoreStore - Powerful Core Data framework for Incremental Migrations, Fetching, Observering, etc.
  • Core Data Query Interface A type-safe, fluent query framework for Core Data.
  • Graph - An elegant data-driven framework for CoreData in Swift.
  • CoreDataDandy - A feature-light wrapper around Core Data that simplifies common database operations.
  • Sync - Modern Swift JSON synchronization to Core Data.
  • AlecrimCoreData - A powerful and simple Core Data wrapper framework written in Swift.
  • AERecord - Super awesome Core Data wrapper in Swift.
  • CoreDataStack - The Big Nerd Ranch Core Data Stack.
  • JSQCoreDataKit - A swifter Core Data stack.
  • Skopelos - A minimalistic, thread safe, non-boilerplate and super easy to use version of Active Record on Core Data. Simply all you need for doing Core Data.
  • Cadmium - A complete swift framework that wraps CoreData and helps facilitate best practices.
  • DataKernel - Simple CoreData wrapper to ease operations.
  • DATAStack - 100% Swift Simple Boilerplate Free Core Data Stack. NSPersistentContainer.
  • JustPersist - JustPersist is the easiest and safest way to do persistence on iOS with Core Data support out of the box.
  • PrediKit - An NSPredicate DSL for iOS, macOS, tvOS, & watchOS. Inspired by SnapKit and lovingly written in Swift.
  • PredicateFlow - Write amazing, strong-typed and easy-to-read NSPredicate, allowing you to write flowable NSPredicate, without guessing attribution names, predicate operation or writing wrong arguments type.
  • CloudCore - Robust CloudKit synchronization: offline editing, relationships, shared and public databases, field-level deltas, and more.

back to top

Courses

Getting Started

Courses, tutorials, guides and bootcamps

back to top

Database

Wrappers, clients, Parse alternatives and safe tools to deal with ephemeral and persistent data.

  • Realm - The alternative to CoreData and SQLite: Simple, modern and fast.
  • YapDatabase - YapDatabase is an extensible database for iOS & Mac.
  • Couchbase Mobile - Couchbase document store for mobile with cloud sync.
  • FMDB - A Cocoa / Objective-C wrapper around SQLite.
  • FCModel - An alternative to Core Data for people who like having direct SQL access.
  • Zephyr - Effortlessly synchronize NSUserDefaults over iCloud.
  • Prephirences - Prephirences is a Swift library that provides useful protocols and convenience methods to manage application preferences, configurations and app-state.
  • Storez - Safe, statically-typed, store-agnostic key-value storage (with namespace support).
  • SwiftyUserDefaults - Statically-typed NSUserDefaults.
  • SugarRecord - Data persistence management library.
  • SQLite.swift - A type-safe, Swift-language layer over SQLite3.
  • GRDB.swift - A versatile SQLite toolkit for Swift, with WAL mode support.
  • Fluent - Simple ActiveRecord implementation for working with your database in Swift.
  • ParseAlternatives - A collaborative list of Parse alternative backend service providers.
  • TypedDefaults - TypedDefaults is a utility library to type-safely use NSUserDefaults.
  • realm-cocoa-converter - A library that provides the ability to import/export Realm files from a variety of data container formats.
  • YapDatabaseExtensions - YapDatabase extensions for use with Swift.
  • RealmGeoQueries - RealmGeoQueries simplifies spatial queries with Realm Cocoa. In the absence of and official functions, this library provide the possibility to do proximity search.
  • SwiftMongoDB - A MongoDB interface for Swift.
  • ObjectiveRocks - An Objective-C wrapper of Facebook's RocksDB - A Persistent Key-Value Store for Flash and RAM Storage.
  • OHMySQL - An Objective-C wrapper of MySQL C API.
  • SwiftStore - Key-Value store for Swift backed by LevelDB.
  • OneStore - A single value proxy for NSUserDefaults, with clean API.
  • MongoDB - A Swift wrapper around the mongo-c client library, enabling access to MongoDB servers.
  • MySQL - A Swift wrapper around the MySQL client library, enabling access to MySQL servers.
  • Redis - A Swift wrapper around the Redis client library, enabling access to Redis.
  • PostgreSQL - A Swift wrapper around the libpq client library, enabling access to PostgreSQL servers.
  • FileMaker - A Swift wrapper around the FileMaker XML Web publishing interface, enabling access to FileMaker servers.
  • Nora - Nora is a Firebase abstraction layer for working with FirebaseDatabase and FirebaseStorage.
  • PersistentStorageSerializable - Swift library that makes easier to serialize the user's preferences (app's settings) with system User Defaults or Property List file on disk.
  • WCDB - WCDB is an efficient, complete, easy-to-use mobile database framework for iOS, macOS.
  • StorageKit - Your Data Storage Troubleshooter.
  • UserDefaults - Simple, Strongly Typed UserDefaults for iOS, macOS and tvOS.
  • Default - Modern interface to UserDefaults + Codable support.
  • IceCream - Sync Realm Database with CloudKit.
  • FirebaseHelper - Safe and easy wrappers for common Firebase Realtime Database functions.
  • Shallows - Your lightweight persistence toolbox.
  • StorageManager - Safe and easy way to use FileManager as Database.
  • RealmWrapper - Safe and easy wrappers for RealmSwift.
  • UserDefaultsStore - An easy and very light way to store and retrieve -reasonable amount- of Codable objects, in a couple lines of code.
  • PropertyKit - Protocol-First, Type and Key-Safe Swift Property for iOS, macOS and tvOS.
  • PersistenceKit - Store and retrieve Codable objects to various persistence layers, in a couple lines of code.
  • ModelAssistant - Elegant library to manage the interactions between view and model in Swift.
  • MMKV - An efficient, small mobile key-value storage framework developed by WeChat. Works on iOS, Android, macOS and Windows.
  • Defaults - Swifty and modern UserDefaults.
  • MongoKitten - A pure Swift MongoDB client implementation with support for embedded databases.
  • SecureDefaults - A lightweight wrapper over UserDefaults/NSUserDefaults with an extra AES-256 encryption layer.
  • Unrealm - Unrealm enables you to easily store Swift native Classes, Structs and Enums into Realm.
  • QuickDB - Save and Retrieve any Codable in JUST ONE line of code + more easy usecases.
  • ObjectBox - ObjectBox is a superfast, light-weight object persistence framework.

back to top

Data Structures / Algorithms

Diffs, keypaths, sorted lists and other amazing data structures wrappers and libraries.

  • Changeset - Minimal edits from one collection to another.
  • BTree - Fast ordered collections for Swift using in-memory B-trees.
  • SwiftStructures - Examples of commonly used data structures and algorithms in Swift.
  • diff - Simple diff library in pure Swift.
  • Brick - A generic view model for both basic and complex scenarios.
  • Algorithm - Algorithm is a collection of data structures that are empowered by a probability toolset.
  • AnyObjectConvertible - Convert your own struct/enum to AnyObject easily.
  • Dollar - A functional tool-belt for Swift Language similar to Lo-Dash or Underscore.js in Javascript https://www.dollarswift.org/.
  • Result - Swift type modeling the success/failure of arbitrary operations.
  • EKAlgorithms - Some well known CS algorithms & data structures in Objective-C.
  • Monaka - Convert custom struct and fundamental values to NSData.
  • Buffer - Swift μ-framework for efficient array diffs, collection observation and cell configuration.
  • SwiftGraph - Graph data structure and utility functions in pure Swift.
  • SwiftPriorityQueue - A priority queue with a classic binary heap implementation in pure Swift.
  • Pencil - Write values to file and read it more easily.
  • HeckelDiff - A fast Swift diffing library.
  • Dekoter - NSCoding's counterpart for Swift structs.
  • swift-algorithm-club - Algorithms and data structures in Swift, with explanations!
  • Impeller - A Distributed Value Store in Swift.
  • Dispatch - Multi-store Flux implementation in Swift.
  • DeepDiff - Diff in Swift.
  • Differ - Swift library to generate differences and patches between collections.
  • Probably - A Swift probability and statistics library.
  • RandMyMod - RandMyMod base on your own struct or class create one or a set of randomized instance.
  • KeyPathKit - KeyPathKit provides a seamless syntax to manipulate data using typed keypaths.
  • Differific - A fast and convenient diffing framework.
  • OneWaySynchronizer - The simplest abstraction to synchronize local data with remote source.
  • DifferenceKit - A fast and flexible O(n) difference algorithm framework for Swift collection.

back to top

Date & Time

Time and NSCalendar libraries. Also contains Sunrise and Sunset time generators, time pickers and NSTimer interfaces.

  • Timepiece - Intuitive NSDate extensions in Swift.
  • SwiftDate - The best way to manage Dates and Timezones in Swift.
  • SwiftMoment - A time and calendar manipulation library.
  • DateTools - Dates and times made easy in Objective-C.
  • SwiftyTimer - Swifty API for NSTimer.
  • DateHelper - Convenience extension for NSDate in Swift.
  • iso-8601-date-formatter - A Cocoa NSFormatter subclass to convert dates to and from ISO-8601-formatted strings. Supports calendar, week, and ordinal formats.
  • EmojiTimeFormatter - Format your dates/times as emojis.
  • Kronos - Elegant NTP date library in Swift.
  • TrueTime - Get the true current time impervious to device clock time changes.
  • 10Clock - This Control is a beautiful time-of-day picker heavily inspired by the iOS 10 "Bedtime" timer.
  • NSDate-TimeAgo - A "time ago", "time since", "relative date", or "fuzzy date" category for NSDate and iOS, Objective-C, Cocoa Touch, iPhone, iPad.
  • AnyDate - Swifty Date & Time API inspired from Java 8 DateTime API.
  • TimeZonePicker - A TimeZonePicker UIViewController similar to the iOS Settings app.
  • Time - Type-safe time calculations in Swift, powered by generics.
  • Chronology - Building a better date/time library.
  • Solar - A Swift micro library for generating Sunrise and Sunset times.
  • TimePicker - Configurable time picker component based on a pan gesture and its velocity.
  • LFTimePicker - Custom Time Picker ViewController with Selection of start and end times in Swift.
  • NVDate - Swift4 Date extension library.
  • Schedule - ⏳ A missing lightweight task scheduler for Swift with an incredibly human-friendly syntax.

back to top

Debugging

Debugging tools, crash reports, logs and console UI's.

  • AEConsole - Customizable Console UI overlay with debug log on top of your iOS App.
  • Alpha - Next generation debugging framework for iOS.
  • AppSpector - Remote iOS and Android debugging and data collection service. You can debug networking, logs, CoreData, SQLite, NSNotificationCenter and mock device's geo location.
  • Atlantis - A little and powerful iOS framework for intercepting HTTP/HTTPS Traffic from your iOS app. No more messing around with proxy and certificate config. Inspect Traffic Log with Proxyman app.
  • chisel - Collection of LLDB commands to assist debugging iOS apps.
  • DBDebugToolkit - Set of easy to use debugging tools for iOS developers & QA engineers.
  • DebugSwift - A comprehensive toolkit designed to simplify and enhance the debugging process for iOS applications.
  • DoraemonKit - A full-featured iOS App development assistant,30+ tools included. You deserve it.
  • Dotzu - iOS app debugger while using the app. Crash report, logs, network.
  • Droar - Droar is a modular, single-line installation debugging window.
  • Flex - An in-app debugging and exploration tool for iOS.
  • GodEye - Automatically display Log,Crash,Network,ANR,Leak,CPU,RAM,FPS,NetFlow,Folder and etc with one line of code based on Swift.
  • Httper-iOS - App for developers to test REST API.
  • Hyperion - In-app design review tool to inspect measurements, attributes, and animations.
  • LayoutInspector - Debug app layouts directly on iOS device: inspect layers in 3D and debug each visible view attributes.
  • MTHawkeye - Profiling / Debugging assist tools for iOS, include tools: UITimeProfiler, Memory Allocations, Living ObjC Objects Sniffer, Network Transaction Waterfall, etc.
  • Netfox - A lightweight, one line setup, iOS / macOS network debugging library!
  • NetShears - Allows developers to intercept and monitor HTTP/HTTPS requests and responses. It also could be configured to show gRPC calls.
  • NetworkEye - a iOS network debug library, It can monitor HTTP requests within the App and displays information related to the request.
  • PonyDebugger - Remote network and data debugging for your native iOS app using Chrome Developer Tools.
  • Playbook - A library for isolated developing UI components and automatically snapshots of them.
  • Scyther - A full-featured, in-app debugging menu packed full of useful tools including network logging, layout inspection, location spoofing, console logging and so much more.
  • Wormholy - iOS network debugging, like a wizard.
  • Xniffer - A swift network profiler built on top of URLSession.
  • Woodpecker - View sandbox files, UserDefaults, network request from Mac.

back to top

Dependency Injection

  • Swinject - Dependency injection framework for Swift.
  • Reliant - Nonintrusive Objective-C dependency injection.
  • Kraken - A Dependency Injection Container for Swift with easy-to-use syntax.
  • Cleanse - Lightweight Swift Dependency Injection Framework by Square.
  • Typhoon - Powerful dependency injection for Objective-C.
  • Pilgrim - Powerful dependency injection Swift (successor to Typhoon).
  • Perform - Easy dependency injection for storyboard segues.
  • Alchemic - Advanced, yet simple to use DI framework for Objective-C.
  • Guise - An elegant, flexible, type-safe dependency resolution framework for Swift.
  • Weaver - A declarative, easy-to-use and safe Dependency Injection framework for Swift.
  • StoryboardBuilder - Simple dependency injection for generating views from storyboard.
  • ViperServices - Dependency injection container for iOS applications written in Swift. Each service can have boot and shutdown code.
  • DITranquillity - Dependency injection framework for iOS applications written in clean Swift.
  • Needle — Compile-time safe Swift dependency injection framework with real code.
  • Locatable - A micro-framework that leverages Property Wrappers to implement the Service Locator pattern.

back to top

Dependency / Package Manager

  • CocoaPods - CocoaPods is the dependency manager for Objective-C projects. It has thousands of libraries and can help you scale your projects elegantly.
  • Xcode Maven - The Xcode Maven Plugin can be used in order to run Xcode builds embedded in a Maven lifecycle.
  • Carthage - A simple, decentralized dependency manager for Cocoa.
  • SWM (Swift Modules) - A package/dependency manager for Swift projects similar to npm (node.js package manager) or bower (browser package manager from Twitter). Does not require the use of Xcode.
  • CocoaSeeds - Git Submodule Alternative for Cocoa.
  • swift-package-manager - The Package Manager for the Swift Programming Language.
  • punic - Clean room reimplementation of Carthage tool.
  • Rome - A cache tool for Carthage built frameworks.
  • Athena - Gradle Plugin to enhance Carthage by uploading the archived frameworks into Maven repository, currently support only Bintray, Artifactory and Mavel local.
  • Accio - A SwiftPM based dependency manager for iOS & Co. with improvements over Carthage.

back to top

Deployment / Distribution

  • fastlane - Connect all iOS deployment tools into one streamlined workflow.
  • deliver - Upload screenshots, metadata and your app to the App Store using a single command.
  • snapshot - Automate taking localized screenshots of your iOS app on every device.
  • buddybuild - A mobile iteration platform - build, deploy, and collaborate.
  • Bitrise - Mobile Continuous Integration & Delivery with dozens of integrations to build, test, deploy and collaborate.
  • watchbuild - Get a notification once your iTunes Connect build is finished processing.
  • Crashlytics - A crash reporting and beta testing service.
  • TestFlight Beta Testing - The beta testing service hosted on iTunes Connect (requires iOS 8 or later).
  • AppCenter - Continuously build, test, release, and monitor apps for every platform.
  • boarding - Instantly create a simple signup page for TestFlight beta testers.
  • HockeyKit - A software update kit.
  • Rollout.io - SDK to patch, fix bugs, modify and manipulate native apps (Obj-c & Swift) in real-time.
  • AppLaunchpad - Free App Store screenshot builder.
  • LaunchKit - A set of web-based tools for mobile app developers, now open source!
  • Instabug - In-app feedback, Bug and Crash reporting, Fix Bugs Faster through user-steps, video recordings, screen annotation, network requests logging.
  • Appfigurate - Secure runtime configuration for iOS and watchOS, apps and app extensions.
  • ScreenshotFramer - With Screenshot Framer you can easily create nice-looking and localized App Store Images.
  • Semaphore - CI/CD service which makes it easy to build, test and deploy applications for any Apple device. iOS support is fully integrated in Semaphore 2.0, so you can use the same powerful CI/CD pipeline features for iOS as you do for Linux-based development.
  • Appcircle.io — An enterprise-grade mobile DevOps platform that automates the build, test, and publish store of mobile apps for faster, efficient release cycle
  • Screenplay - Instant rollbacks and canary deployments for iOS.
  • Codemagic - Build, test and deliver iOS apps 20% faster with Codemagic CI/CD.
  • Runway - Easier mobile releases for teams. Integrates across tools (version control, project management, CI, app stores, crash reporting, etc.) to provide a single source of truth for mobile teams to come together around during release cycles. Equal parts automation and collaboration.
  • ios-uploader - Easy to use, cross-platform tool to upload iOS apps to App Store Connect.

back to top

EventBus

Promises and Futures libraries to help you write better async code in Swift.

  • SwiftEventBus - A publish/subscribe event bus optimized for iOS.
  • PromiseKit - Promises for iOS and macOS.
  • Bolts - Bolts is a collection of low-level libraries designed to make developing mobile apps easier, including tasks (promises) and app links (deep links).
  • SwiftTask - Promise + progress + pause + cancel + retry for Swift.
  • When - A lightweight implementation of Promises in Swift.
  • then🎬 - Elegant Async code in Swift.
  • Bolts-Swift - Bolts is a collection of low-level libraries designed to make developing mobile apps easier.
  • RWPromiseKit - A light-weighted Promise library for Objective-C.
  • FutureLib - FutureLib is a pure Swift 2 library implementing Futures & Promises inspired by Scala.
  • SwiftNotificationCenter - A Protocol-Oriented NotificationCenter which is type safe, thread safe and with memory safety.
  • FutureKit - A Swift based Future/Promises Library for iOS and macOS.
  • signals-ios - Typeful eventing.
  • BrightFutures - Write great asynchronous code in Swift using futures and promises.
  • NoticeObserveKit - NoticeObserveKit is type-safe NotificationCenter wrapper that associates notice type with info type.
  • Hydra - Promises & Await - Write better async code in Swift.
  • Promis - The easiest Future and Promises framework in Swift. No magic. No boilerplate.
  • Bluebird.swift - Promise/A+, Bluebird inspired, implementation in Swift 4.
  • Promise - A Promise library for Swift, based partially on Javascript's A+ spec.
  • promises - Google provides a synchronization construct for Objective-C and Swift to facilitate writing asynchronous code.
  • Continuum - NotificationCenter based Lightweight UI / AnyObject binder.
  • Futures - Lightweight promises for iOS, macOS, tvOS, watchOS, and server-side Swift.
  • EasyFutures - 🔗 Swift Futures & Promises. Easy to use. Highly combinable.
  • TopicEventBus - Publish–subscribe design pattern implementation framework, with ability to publish events by topic. (NotificationCenter extended alternative).

back to top

Files

File management, file browser, zip handling and file observers.

  • FileKit - Simple and expressive file management in Swift.
  • Zip - Swift framework for zipping and unzipping files.
  • FileBrowser - Powerful Swift file browser for iOS.
  • Ares - Zero-setup P2P file transfer between Macs and iOS devices.
  • FileProvider - FileManager replacement for Local, iCloud and Remote (WebDAV/FTP/Dropbox/OneDrive/SMB2) files on iOS/tvOS and macOS.
  • KZFileWatchers - A micro-framework for observing file changes, both local and remote. Helpful in building developer tools.
  • ZipArchive - ZipArchive is a simple utility class for zipping and unzipping files on iOS and Mac.
  • FileExplorer - Powerful file browser for iOS that allows its users to choose and remove files and/or directories.
  • ZIPFoundation - Effortless ZIP Handling in Swift.
  • AppFolder - AppFolder is a lightweight framework that lets you design a friendly, strongly-typed representation of a directories inside your app's container.
  • ZipZap - zip file I/O library for iOS, macOS and tvOS.
  • AMSMB2 - Swift framework to connect SMB 2/3 shares for iOS.

back to top

Functional Programming

Collection of Swift functional programming tools.

  • Forbind - Functional chaining and promises in Swift.
  • Funky - Functional programming tools and experiments in Swift.
  • LlamaKit - Collection of must-have functional Swift tools.
  • Oriole - A functional utility belt implemented as Swift protocol extensions.
  • Prelude - Swift µframework of simple functional programming tools.
  • Swiftx - Functional data types and functions for any project.
  • Swiftz - Functional programming in Swift.
  • OptionalExtensions - Swift µframework with extensions for the Optional Type.
  • Argo - Functional JSON parsing library for Swift.
  • Runes - Infix operators for monadic functions in Swift.
  • Bow - Typed Functional Programming companion library for Swift.

back to top

Games

  • AssetImportKit - Swifty cross platform library (macOS, iOS) that converts Assimp supported models to SceneKit scenes.
  • CollectionNode - A swift framework for a collectionView in SpriteKit.
  • glide engine - SpriteKit and GameplayKit based engine for making 2d games, with practical examples and tutorials.
  • Lichess mobile - A mobile client for lichess.org.
  • Sage - A cross-platform chess library for Swift.
  • ShogibanKit - ShogibanKit is a framework for implementing complex Japanese Chess (Shogii) in Swift. No UI, nor AI.
  • SKTiled - Swift framework for working with Tiled assets in SpriteKit.
  • SwiftFortuneWheel - A cross-platform framework for games like a Wheel of Fortune.

back to top

GCD

Grand Central Dispatch syntax sugars, tools and timers.

  • GCDKit - Grand Central Dispatch simplified with Swift.
  • Async - Syntactic sugar in Swift for asynchronous dispatches in Grand Central Dispatch.
  • SwiftSafe - Thread synchronization made easy.
  • YYDispatchQueuePool - iOS utility class to manage global dispatch queue.
  • AlecrimAsyncKit - Bringing async and await to Swift world with some flavouring.
  • GrandSugarDispatch - Syntactic sugar for Grand Central Dispatch (GCD).
  • Threader - Pretty GCD calls and easier code execution.
  • Dispatch - Just a tiny library to make using GCD easier and intuitive.
  • GCDTimer - Well tested Grand Central Dispatch (GCD) Timer in Swift.
  • Chronos-Swift - Grand Central Dispatch Utilities.
  • Me - A super slim solution to the nested asynchronous computations.
  • SwiftyTask - An extreme queuing system with high performance for managing all task in app with closure.

back to top

Gesture

Libraries and tools to handle gestures.

back to top

Graphics

CoreGraphics, CoreAnimation, SVG, CGContext libraries, helpers and tools.

  • Graphicz - Light-weight, operator-overloading-free complements to CoreGraphics!
  • PKCoreTechniques - The code for my CoreGraphics+CoreAnimation talk, held during the 2012 iOS Game Design Seminar at the Technical University Munich.
  • MPWDrawingContext - An Objective-C wrapper for CoreGraphics CGContext.
  • DePict - A simple, declarative, functional drawing framework, in Swift!
  • SwiftSVG - A single pass SVG parser with multiple interface options (String, NS/UIBezierPath, CAShapeLayer, and NS/UIView).
  • InkKit - Write-Once, Draw-Everywhere for iOS and macOS.
  • YYAsyncLayer - iOS utility classes for asynchronous rendering and display.
  • NXDrawKit - NXDrawKit is a simple and easy but useful drawing kit for iPhone.
  • jot - An iOS framework for easily adding drawings and text to images.
  • SVGKit - Display and interact with SVG Images on iOS / macOS, using native rendering (CoreAnimation) (currently only supported for iOS - macOS code needs updating).
  • Snowflake - SVG in Swift.
  • HxSTLParser - Basic STL loader for SceneKit.
  • ProcessingKit - Visual designing library for iOS & OSX.
  • EZYGradientView - Create gradients and blur gradients without a single line of code.
  • AEConicalGradient - Conical (angular) gradient layer written in Swift.
  • MKGradientView - Core Graphics based gradient view capable of producing Linear (Axial), Radial (Circular), Conical (Angular), Bilinear (Four Point) gradients, written in Swift.
  • EPShapes - Design shapes in Interface Builder.
  • Macaw - Powerful and easy-to-use vector graphics library with SVG support written in Swift.
  • BlockiesSwift - Unique blocky identicons/profile picture generator.
  • Rough - lets you draw in a sketchy, hand-drawn-like, style.
  • GraphLayout - UI controls for graph visualization. It is powered by Graphviz.
  • Drawsana - iOS framework for building raster drawing and image markup views.
  • AnimatedGradientView - A simple framework to add animated gradients to your iOS app.

back to top

Hardware

Bluetooth

Libraries to deal with nearby devices, BLE tools and MultipeerConnectivity wrappers.

  • Discovery - A very simple library to discover and retrieve data from nearby devices (even if the peer app works at background).
  • LGBluetooth - Simple, block-based, lightweight library over CoreBluetooth. Will clean up your Core Bluetooth related code.
  • PeerKit An open-source Swift framework for building event-driven, zero-config Multipeer Connectivity apps.
  • BluetoothKit - Easily communicate between iOS/macOS devices using BLE.
  • Bluetonium - Bluetooth mapping in Swift.
  • BlueCap - iOS Bluetooth LE framework.
  • Apple Family - Quickly connect Apple devices together with Bluetooth, wifi, and USB.
  • Bleu - BLE (Bluetooth LE) for U.
  • Bluejay - A simple Swift framework for building reliable Bluetooth LE apps.
  • BabyBluetooth - The easiest way to use Bluetooth (BLE) in iOS/MacOS.
  • ExtendaBLE - Simple Blocks-Based BLE Client for iOS/tvOS/watchOS/OSX/Android. Quickly configuration for centrals/peripherals, perform packet based read/write operations, and callbacks for characteristic updates.
  • PeerConnectivity - Functional wrapper for Apple's MultipeerConnectivity framework.
  • AZPeerToPeerConnection - AZPeerToPeerConnectivity is a wrapper on top of Apple iOS Multipeer Connectivity framework. It provides an easier way to create and manage sessions. Easy to integrate.
  • MultiPeer - Multipeer is a wrapper for Apple's MultipeerConnectivity framework for offline data transmission between Apple devices. It makes easy to automatically connect to multiple nearby devices and share information using either bluetooth or wifi.
  • BerkananSDK - Mesh messaging SDK with the goal to create a decentralized mesh network for the people, powered by their device's Bluetooth antenna.

back to top

Camera

Mocks, ImagePickers, and multiple options of customizable camera implementation

  • TGCameraViewController - Custom camera with AVFoundation. Beautiful, light and easy to integrate with iOS projects.
  • PBJVision - iOS camera engine, features touch-to-record video, slow motion video, and photo capture.
  • Cool-iOS-Camera - A fully customisable and modern camera implementation for iOS made with AVFoundation.
  • SCRecorder - Camera engine with Vine-like tap to record, animatable filters, slow motion, segments editing.
  • ALCameraViewController - A camera view controller with custom image picker and image cropping. Written in Swift.
  • CameraManager - Simple Swift class to provide all the configurations you need to create custom camera view in your app.
  • RSBarcodes_Swift - 1D and 2D barcodes reader and generators for iOS 8 with delightful controls. Now Swift.
  • LLSimpleCamera - A simple, customizable camera control - video recorder for iOS.
  • Fusuma - Instagram-like photo browser and a camera feature with a few line of code in Swift.
  • BarcodeScanner - Simple and beautiful barcode scanner.
  • HorizonSDK-iOS - State of the art real-time video recording / photo shooting iOS library.
  • FastttCamera - Fasttt and easy camera framework for iOS with customizable filters.
  • DKCamera - A lightweight & simple camera framework for iOS. Written in Swift.
  • NextLevel - Next Level is a media capture camera library for iOS.
  • CameraEngine - Camera engine for iOS, written in Swift, above AVFoundation.
  • SwiftyCam - A Snapchat Inspired iOS Camera Framework written in Swift.
  • CameraBackground - Show camera layer as a background to any UIView.
  • Lumina - Full service camera that takes photos, videos, streams frames, detects metadata, and streams CoreML predictions.
  • RAImagePicker - RAImagePicker is a protocol-oriented framework that provides custom features from the built-in Image Picker Edit.
  • FDTake - Easily take a photo or video or choose from library.
  • YPImagePicker - Instagram-like image picker & filters for iOS.
  • MockImagePicker - Mock UIImagePickerController for testing camera based UI in simulator.
  • iOS-Depth-Sampler - A collection of code examples for Depth APIs.
  • TakeASelfie - An iOS framework that uses the front camera, detects your face and takes a selfie.
  • HybridCamera - Video and photo camera for iOS, similar to the SnapChat camera.
  • CameraKit-iOS - Massively increase camera performance and ease of use in your next iOS project.
  • ExyteMediaPicker - Customizable media picker

back to top

Force Touch

Quick actions and peek and pop interactions

  • QuickActions - Swift wrapper for iOS Home Screen Quick Actions (App Icon Shortcuts).
  • JustPeek - JustPeek is an iOS Library that adds support for Force Touch-like Peek and Pop interactions on devices that do not natively support this kind of interaction.
  • PeekView - PeekView supports peek, pop and preview actions for iOS devices without 3D Touch capibility.

back to top

iBeacon

Device detect libraries and iBeacon helpers

  • Proxitee - Allows developers to create proximity aware applications utilizing iBeacons & geo fences.
  • OWUProximityManager - iBeacons + CoreBluetooth.
  • Vicinity - Vicinity replicates iBeacons (by analyzing RSSI) and supports broadcasting and detecting low-energy Bluetooth devices in the background.
  • BeaconEmitter - Turn your Mac as an iBeacon.
  • MOCA Proximity - Paid proximity marketing platform that lets you add amazing proximity experiences to your app.
  • JMCBeaconManager - An iBeacon Manager class that is responsible for detecting beacons nearby.

back to top

Location

Location monitoring, detect motion and geofencing libraries

  • AsyncLocationKit - Wrapper for Apple CoreLocation framework with Modern Concurrency Swift (async/await).
  • IngeoSDK - Always-On Location monitoring framework for iOS.
  • LocationManager - Provides a block-based asynchronous API to request the current location, either once or continuously.
  • SwiftLocation - Location & Beacon Monitoring in Swift.
  • SOMotionDetector - Simple library to detect motion. Based on location updates and acceleration.
  • LocationPicker - A ready for use and fully customizable location picker for your app.
  • BBLocationManager - A Location Manager for easily implementing location services & geofencing in iOS.
  • set-simulator-location - CLI for setting location in the iOS simulator.
  • NominatimKit - A Swift wrapper for (reverse) geocoding of OpenStreetMap data.

back to top

Other Hardware

  • MotionKit - Get the data from Accelerometer, Gyroscope and Magnetometer in only Two or a few lines of code. CoreMotion now made insanely simple.
  • DarkLightning - Simply the fastest way to transmit data between iOS/tvOS and macOS.
  • Deviice - Simply library to detect the device on which the app is running (and some properties).
  • DeviceKit - DeviceKit is a value-type replacement of UIDevice.
  • Luminous - Luminous is a big framework which can give you a lot of information (more than 50) about the current system.
  • Device - Light weight tool for detecting the current device and screen size written in swift.
  • WatchShaker - WatchShaker is a watchOS helper to get your shake movement written in swift.
  • WatchCon - WatchCon is a tool which enables creating easy connectivity between iOS and WatchOS.
  • TapticEngine - TapticEngine generates iOS Device vibrations.
  • UIDeviceComplete - UIDevice extensions that fill in the missing pieces.
  • NFCNDEFParse - NFC Forum Well Known Type Data Parser for iOS11 and Core NFC.
  • Device.swift - Super-lightweight library to detect used device.
  • SDVersion - Lightweight Cocoa library for detecting the running device's model and screen size.
  • Haptico - Easy to use haptic feedback generator with pattern-play support.
  • NFCPassportReader - Swift library to read an NFC enabled passport. Supports BAC, Secure Messaging, and both active and passive authentication. Requires iOS 13 or above.

back to top

Layout

Auto Layout, UI frameworks and a gorgeous list of tools to simplify layout constructions

  • Masonry - Harness the power of AutoLayout NSLayoutConstraints with a simplified, chainable and expressive syntax.
  • FLKAutoLayout - UIView category which makes it easy to create layout constraints in code.
  • Façade - Programmatic view layout for the rest of us - an autolayout alternative.
  • PureLayout - The ultimate API for iOS & macOS Auto Layout — impressively simple, immensely powerful. Objective-C and Swift compatible.
  • SnapKit - A Swift Autolayout DSL for iOS & macOS.
  • Cartography - A declarative Auto Layout DSL for Swift.
  • AutoLayoutPlus - A bit of steroids for AutoLayout.
  • Neon - A powerful Swift programmatic UI layout framework.
  • MisterFusion - A Swift DSL for AutoLayout. It is the extremely clear, but concise syntax, in addition, can be used in both Swift and Objective-C.
  • SwiftBox - Flexbox in Swift, using Facebook's css-layout.
  • ManualLayout - Easy to use and flexible library for manually laying out views and layers for iOS and tvOS. Supports AsyncDisplayKit.
  • Stevia - Elegant view layout for iOS.
  • Manuscript - AutoLayoutKit in pure Swift.
  • FDTemplateLayoutCell - Template auto layout cell for automatically UITableViewCell height calculating.
  • SwiftAutoLayout - Tiny Swift DSL for Autolayout.
  • FormationLayout - Work with auto layout and size classes easily.
  • SwiftyLayout - Lightweight declarative auto-layout framework for Swift.
  • Swiftstraints - Auto Layout In Swift Made Easy.
  • SwiftBond - Bond is a Swift binding framework that takes binding concepts to a whole new level. It's simple, powerful, type-safe and multi-paradigm.
  • Restraint - Minimal Auto Layout in Swift.
  • EasyPeasy - Auto Layout made easy.
  • Auto Layout Magic - Build 1 scene, let Auto Layout Magic generate the constraints for you! Scenes look great across all devices!
  • Anchorman - An autolayout library for the damn fine citizens of San Diego.
  • LayoutKit - LayoutKit is a fast view layout library for iOS.
  • Relayout - Swift microframework for declaring Auto Layout constraints functionally.
  • Anchorage - A collection of operators and utilities that simplify iOS layout code.
  • Compose - Compose is a library that helps you compose complex and dynamic views.
  • BrickKit - With BrickKit, you can create complex and responsive layouts in a simple way. It's easy to use and easy to extend. Create your own reusable bricks and behaviors.
  • Framezilla - Elegant library which wraps working with frames with a nice chaining syntax.
  • TinyConstraints - The syntactic sugar that makes Auto Layout sweeter for human use.
  • MyLinearLayout - MyLayout is a powerful iOS UI framework implemented by Objective-C. It integrates the functions with Android Layout,iOS AutoLayout,SizeClass, HTML CSS float and flexbox and bootstrap.
  • SugarAnchor - Same native NSLayoutAnchor & NSLayoutConstraints; but with more natural and easy to read syntactic sugar. Typesafe, concise & readable.
  • EasyAnchor - Declarative, extensible, powerful Auto Layout.
  • PinLayout - Fast Swift Views layouting without auto layout. No magic, pure code, full control and blazing fast. Concise syntax, intuitive, readable & chainable.
  • SnapLayout - Concise Auto Layout API to chain programmatic constraints while easily updating existing constraints.
  • Cupcake - An easy way to create and layout UI components for iOS.
  • MiniLayout - Minimal AutoLayout convenience layer. Program constraints succinctly.
  • Bamboo - Bamboo makes Auto Layout (and manual layout) elegant and concise.
  • FlexLayout - FlexLayout gently wraps the highly optimized facebook/yoga flexbox implementation in a concise, intuitive & chainable syntax.
  • Layout - A declarative UI framework for iOS.
  • CGLayout - Powerful autolayout framework based on constraints, that can manage UIView(NSView), CALayer and not rendered views. Not Apple Autolayout wrapper.
  • YogaKit - Powerful layout engine which implements Flexbox.
  • FlightLayout - Balanced medium between manual layout and auto-layout. Great for calculating frames for complex animations.
  • QLayout - AutoLayout Utility for iOS.
  • Layoutless - Minimalistic declarative layout and styling framework built on top of Auto Layout.
  • Yalta - An intuitive and powerful Auto Layout library.
  • SuperLayout - Simplify Auto Layout with super syntactic sugar.
  • QuickLayout - QuickLayout offers a simple way, to easily manage Auto Layout in code.
  • EEStackLayout - A structured vertical stack layout.
  • RKAutoLayout - Simple wrapper over AutoLayout.
  • Grid - The most powerful Grid container missed in SwiftUI.
  • MondrianLayout - A DSL based layout builder for AutoLayout.
  • ScalingHeaderScrollView - A scroll view with a sticky header which shrinks as you scroll. Written with SwiftUI.

back to top

Localization

Tools to manage strings files, translate and enable localization in your apps.

  • Hodor - Simple solution to localize your iOS App.
  • Swifternalization - Localize iOS apps in a smarter way using JSON files. Swift framework.
  • Rubustrings - Check the format and consistency of Localizable.strings files.
  • BartyCrouch - Incrementally update/translate your Strings files from Code and Storyboards/XIBs.
  • LocalizationKit - Localization management in realtime from a web portal. Easily manage your texts and translations without redeploy and resubmission.
  • Localize-Swift - Swift 2.0 friendly localization and i18n with in-app language switching.
  • LocalizedView - Setting up application specific localized string within Xib file.
  • transai - command line tool help you manage localization string files.
  • Strsync - Automatically translate and synchronize .strings files from base language.
  • IBLocalizable - Localize your views directly in Interface Builder with IBLocalizable.
  • nslocalizer - A tool for finding missing and unused NSLocalizedStrings.
  • L10n-swift - Localization of an application with ability to change language "on the fly" and support for plural forms in any language.
  • Localize - Easy tool to localize apps using JSON or Strings and of course IBDesignables with extensions for UI components.
  • CrowdinSDK - Crowdin iOS SDK delivers all new translations from Crowdin project to the application immediately.
  • attranslate - Semi-automatically translate or synchronize .strings files or crossplatform-files from different languages.
  • Respresso Localization Converter - Multiplatform localization converter for iOS (.strings + Objective-C getters), Android (strings.xml) and Web (.json).
  • locheck - Validate .strings, .stringsdict, and strings.xml files for correctness to avoid crashes and bad translations.

back to top

Logging

Debugging lives here. Logging tools, frameworks, integrations and more.

  • CleanroomLogger - A configurable and extensible Swift-based logging API that is simple, lightweight and performant.
  • CocoaLumberjack - A fast & simple, yet powerful & flexible logging framework for Mac and iOS.
  • NSLogger - a high performance logging utility which displays traces emitted by client applications running on macOS, iOS and Android.
  • QorumLogs — Swift Logging Utility for Xcode & Google Docs.
  • Log - A logging tool with built-in themes, formatters, and a nice API to define your owns.
  • Rainbow - Delightful console output for Swift developers.
  • SwiftyBeaver - Convenient logging during development and release.
  • SwiftyTextTable - A lightweight tool for generating text tables.
  • Watchdog - Class for logging excessive blocking on the main thread.
  • XCGLogger - A debug log framework for use in Swift projects. Allows you to log details to the console (and optionally a file), just like you would have with NSLog or println, but with additional information, such as the date, function name, filename and line number.
  • Colors - A pure Swift library for using ANSI codes. Basically makes command-line coloring and styling very easy!
  • AELog - Simple, lightweight and flexible debug logging framework written in Swift.
  • ReflectedStringConvertible - A protocol that allows any class to be printed as if it were a struct.
  • SwiftTrace - Trace Swift and Objective-C method invocations.
  • Willow - Willow is a powerful, yet lightweight logging library written in Swift.
  • Bugfender - Cloud storage for your app logs. Track user behaviour to find problems in your mobile apps.
  • LxDBAnything - Automate box any value! Print log without any format control symbol! Change debug habit thoroughly!
  • XLTestLog - Styling and coloring your XCTest logs on Xcode Console.
  • XLFacility - Elegant and extensive logging facility for macOS & iOS (includes database, Telnet and HTTP servers).
  • Atlantis - A powerful input-agnostic swift logging framework made to speed up development with maximum readability.
  • StoryTeller - Taking a completely different approach to logging, Story Teller replacing fixed logging levels in It then uses dynamic expressions to control the logging so you only see what is important.
  • LumberMill - Stupidly simple logging.
  • TinyConsole - A tiny log console to display information while using your iOS app.
  • Lighty - Easy to use and lightweight logger for iOS, macOS, tvOS, watchOS and Linux.
  • JustLog - Console, file and remote Logstash logging via TCP socket.
  • Twitter Logging Service - Twitter Logging Service is a robust and performant logging framework for iOS clients.
  • Reqres - Network request and response body logger with Alamofire support.
  • TraceLog - Dead Simple: logging the way it's meant to be! Runs on ios, osx, and Linux.
  • OkLog - A network logger for iOS and macOS projects.
  • Spy - Lightweight, flexible, multiplatform (iOS, macOS, tvOS, watchOS, Linux) logging utility written in pure Swift that allows you to log on different levels and channels which you can define on your own depending on your needs.
  • Diagnostics - Allow users to easily share Diagnostics with your support team to improve the flow of fixing bugs.
  • Gedatsu - Provide readable format about AutoLayout error console log.
  • Pulse - Pulse is a powerful logging system for Apple Platforms. Native. Built with SwiftUI.

back to top

Machine Learning

A collection of ML Models, deep learning and neural networking libraries

  • Swift-Brain - Artificial Intelligence/Machine Learning data structures and Swift algorithms for future iOS development. Bayes theorem, Neural Networks, and more AI.
  • AIToolbox - A toolbox of AI modules written in Swift: Graphs/Trees, Linear Regression, Support Vector Machines, Neural Networks, PCA, KMeans, Genetic Algorithms, MDP, Mixture of Gaussians.
  • Tensorflow-iOS - The official Google-built powerful neural network library port for iOS.
  • Bender - Easily craft fast Neural Networks. Use TensorFlow models. Metal under the hood.
  • CoreML-samples - Sample code for Core ML using ResNet50 provided by Apple and a custom model generated by coremltools.
  • Revolver - A framework for building fast genetic algorithms in Swift. Comes with modular architecture, pre-implemented operators and loads of examples.
  • CoreML-Models - A collection of unique Core ML Models.
  • Serrano - A deep learning library for iOS and macOS.
  • Swift-AI - The Swift machine learning library.
  • TensorSwift - A lightweight library to calculate tensors in Swift, which has similar APIs to TensorFlow's.
  • DL4S - Deep Learning for Swift: Accelerated tensor operations and dynamic neural networks based on reverse mode automatic differentiation for every device that can run Swift.
  • SwiftCoreMLTools - A Swift library for creating and exporting CoreML Models in Swift.

back to top

Maps

  • Mapbox GL - An OpenGL renderer for Mapbox Vector Tiles with SDK bindings for iOS.
  • GEOSwift - The Swift Geographic Engine.
  • PXGoogleDirections - Google Directions API helper for iOS, written in Swift.
  • Cluster - Easy Map Annotation Clustering.
  • JDSwiftHeatMap - JDSwiftMap is an IOS Native MapKit Library. You can easily make a highly customized HeatMap.
  • ClusterKit - An iOS map clustering framework targeting MapKit, Google Maps and Mapbox.
  • FlyoverKit - FlyoverKit enables you to present stunning 360° flyover views on your MKMapView with zero effort while maintaining full configuration possibilities.
  • MapViewPlus - Use any custom view as custom callout view of your MKMapView with cool animations. Also, easily use any image as annotation view.
  • MSFlightMapView - Add and animate geodesic flights on Google map.
  • WhirlyGlobe-Maply - 3D globe and flat-map SDK for iOS. This toolkit has a large API for fine-grained control over the map or globe. It reads a wide variety of GIS data formats.

back to top

Math

Math frameworks, functions and libraries to custom operations, statistical calculations and more.

  • Euler - Swift Custom Operators for Mathematical Notation.
  • SwiftMath - A math framework for Swift. Includes: vectors, matrices, complex numbers, quaternions and polynomials.
  • Arithmosophi - A set of protocols for Arithmetic and Logical operations.
  • Surge - A Swift library that uses the Accelerate framework to provide high-performance functions for matrix math, digital signal processing, and image manipulation.
  • Upsurge - Swift math.
  • Swift-MathEagle - A general math framework to make using math easy. Currently supports function solving and optimisation, matrix and vector algebra, complex numbers, big int and big frac and general handy extensions and functions.
  • iosMath - A library for displaying beautifully rendered math equations. Enables typesetting LaTeX math formulae in iOS.
  • BigInt - Arbitrary-precision arithmetic in pure Swift.
  • SigmaSwiftStatistics - A collection of functions for statistical calculation.
  • VectorMath - A Swift library for Mac and iOS that implements common 2D and 3D vector and matrix functions, useful for games or vector-based graphics.
  • Expression - A Mac and iOS library for evaluating numeric expressions at runtime.
  • Metron - Metron is a comprehensive collection of geometric functions and types that extend the 2D geometric primitives provided by CoreGraphics.
  • NumericAnnex - NumericAnnex supplements the numeric facilities provided in the Swift standard library.
  • Matft - Matft is Numpy-like library in Swift. Matft allows us to handle n-dimensional array easily in Swift.

back to top

Media

Audio

  • AudioBus - Add Next Generation Live App-to-App Audio Routing.
  • AudioKit - A powerful toolkit for synthesizing, processing, and analyzing sounds.
  • EZAudio - An iOS/macOS audio visualization framework built upon Core Audio useful for anyone doing real-time, low-latency audio processing and visualizations.
  • novocaine - Painless high-performance audio on iOS and macOS.
  • QHSpeechSynthesizerQueue - Queue management system for AVSpeechSynthesizer (iOS Text to Speech).
  • Cephalopod - A sound fader for AVAudioPlayer written in Swift.
  • Chirp - The easiest way to prepare, play, and remove sounds in your Swift app!
  • Beethoven - An audio processing Swift library for pitch detection of musical signals.
  • AudioPlayerSwift - AudioPlayer is a simple class for playing audio in iOS, macOS and tvOS apps.
  • AudioPlayer - AudioPlayer is syntax and feature sugar over AVPlayer. It plays your audio files (local & remote).
  • TuningFork - Simple Tuner for iOS.
  • MusicKit - A framework for composing and transforming music in Swift.
  • SubtleVolume - Replace the system volume popup with a more subtle indicator.
  • NVDSP - iOS/macOS DSP for audio (with Novocaine).
  • SRGMediaPlayer-iOS - The SRG Media Player library for iOS provides a simple way to add a universal audio / video player to any iOS application.
  • IQAudioRecorderController - A drop-in universal library allows to record audio within the app with a nice User Interface.
  • TheAmazingAudioEngine2 - The Amazing Audio Engine is a sophisticated framework for iOS audio applications, built so you don't have to.
  • InteractivePlayerView - Custom iOS music player view.
  • ESTMusicIndicator - Cool Animated music indicator view written in Swift.
  • QuietModemKit - iOS framework for the Quiet Modem (data over sound).
  • SwiftySound - Super simple library that lets you play sounds with a single line of code (and much more). Written in Swift 3, supports iOS, macOS and tvOS. CocoaPods and Carthage compatible.
  • BPMAnalyser - Fast and simple instrument to get the BPM rate from your audio-files.
  • PandoraPlayer - A lightweight music player for iOS, based on AudioKit.
  • SonogramView - Audio visualisation of song.
  • AudioIndicatorBars - AIB indicates for your app users which audio is playing. Just like the Podcasts app.
  • Porcupine - On-device wake word detection engine for macOS, iOS, and watchOS, powered by deep learning.
  • Voice Overlay - An overlay that gets your user’s voice permission and input as text in a customizable UI.
  • ModernAVPlayer - Persistence player to resume playback after bad network connection even in background mode, manage headphone interactions, system interruptions, now playing informations and remote commands.
  • FDWaveformView - An easy way to display an audio waveform in your app, including animation.
  • FDSoundActivatedRecorder - Start recording when the user speaks.

back to top

GIF

  • YLGIFImage - Async GIF image decoder and Image viewer supporting play GIF images. It just use very less memory.
  • FLAnimatedImage - Performant animated GIF engine for iOS.
  • gifu - Highly performant animated GIF support for iOS in Swift.
  • AnimatedGIFImageSerialization - Complete Animated GIF Support for iOS, with Functions, NSJSONSerialization-style Class, and (Optional) UIImage Swizzling
  • XAnimatedImage - XAnimatedImage is a performant animated GIF engine for iOS written in Swift based on FLAnimatedImage
  • SwiftGif - A small UIImage extension with gif support.
  • APNGKit - High performance and delightful way to play with APNG format in iOS.
  • YYImage - Image framework for iOS to display/encode/decode animated WebP, APNG, GIF, and more.
  • AImage - A animated GIF&APNG engine for iOS in Swift with low memory & cpu usage.Optimized for Multi-Image case.
  • NSGIF2 - Simplify creation of a GIF from the provided video file url.
  • SwiftyGif - High performance GIF engine.

back to top

Image

  • GPU Image - An open source iOS framework for GPU-based image and video processing.
  • UIImage DSP - iOS UIImage processing functions using the vDSP/Accelerate framework for speed.
  • AsyncImageView - Simple extension of UIImageView for loading and displaying images asynchronously without lock up the UI.
  • SDWebImage - Asynchronous image downloader with cache support with an UIImageView category.
  • DFImageManager - Modern framework for fetching images from various sources. Zero config yet immense customization and extensibility. Uses NSURLSession.
  • MapleBacon - An image download and caching library for iOS written in Swift.
  • NYTPhotoViewer - Slideshow and image viewer.
  • IDMPhotoBrowser - Photo Browser / Viewer.
  • Concorde - Download and decode progressive JPEGs.
  • TOCropViewController - A view controller that allows users to crop UIImage objects.
  • YXTMotionView - A custom image view that implements device motion scrolling.
  • PINRemoteImage - A thread safe, performant, feature rich image fetcher.
  • SABlurImageView - Easily Adding Animated Blur/Unblur Effects To An Image.
  • FastImageCache - iOS library for quickly displaying images while scrolling.
  • BKAsciiImage - Convert UIImage to ASCII art.
  • AlamofireImage - An image component library for Alamofire.
  • Nuke - Image loading, processing, caching and preheating.
  • FlagKit - Beautiful flag icons for usage in apps and on the web.
  • YYWebImage - Asynchronous image loading framework (supports WebP, APNG, GIF).
  • RSKImageCropper - An image cropper for iOS like in the Contacts app with support for landscape orientation.
  • Silo - Image loading framework with loaders.
  • Ody - Ody is an easy to use random image generator built with Swift, Perfect for placeholders.
  • Banana - Image slider with very simple interface.
  • JDSwiftAvatarProgress - Easy customizable avatar image asynchronously with progress bar animated.
  • Kingfisher - A lightweight and pure Swift implemented library for downloading and caching image from the web.
  • EBPhotoPages - A photo gallery for iOS with a modern feature set. Similar features as the Facebook photo browser.
  • UIImageView-BetterFace-Swift - The Swift version of https://github.com/croath/UIImageView-BetterFace
  • KFSwiftImageLoader - An extremely high-performance, lightweight, and energy-efficient pure Swift async web image loader with memory and disk caching for iOS and Apple Watch.
  • Toucan - Fabulous Image Processing in Swift.
  • ImageLoaderSwift - A lightweight and fast image loader for iOS written in Swift.
  • ImageScout - A Swift implementation of fastimage. Supports PNG, GIF, and JPEG.
  • JLStickerTextView - A UIImageView allow you to add multiple Label (multiple line text support) on it, you can edit, rotate, resize the Label as you want with one finger ,then render the text on Image.
  • Agrume - A lemony fresh iOS image viewer written in Swift.
  • PASImageView - Rounded async imageview downloader lightly cached and written in Swift.
  • Navi - Focus on avatar caching.
  • SwiftPhotoGallery - Simple, fullscreen image gallery with tap, swipe, and pinch gestures.
  • MetalAcc - GPU-based Media processing library using Metal written in Swift.
  • MWPhotoBrowser - A simple iOS photo and video browser with grid view, captions and selections.
  • UIImageColors - iTunes style color fetcher for UIImage.
  • CDFlipView - A view that takes a set of images, make transition from one to another by using flipping effects.
  • GPUImage2 - GPUImage 2 is a BSD-licensed Swift framework for GPU-accelerated video and image processing.
  • TGLParallaxCarousel - A lightweight 3D Linear Carousel with parallax effect.
  • ImageButter - Makes dealing with images buttery smooth.
  • SKPhotoBrowser - Simple PhotoBrowser/Viewer inspired by Facebook, Twitter photo browsers written by swift.
  • YUCIHighPassSkinSmoothing - An implementation of High Pass Skin Smoothing using Apple's Core Image Framework.
  • CLImageViewPopup - A simple Image full screen pop up.
  • APKenBurnsView - Ken Burns effect with face recognition!
  • Moa - An image download extension of the image view for iOS, tvOS and macOS.
  • JMCMarchingAnts - Library that lets you add marching ants (animated) selection to the edges of the images.
  • ImageViewer - An image viewer à la Twitter.
  • FaceAware - An extension that gives UIImageView the ability to focus on faces within an image when using AspectFill.
  • SwiftyAvatar - A UiimageView class for creating circular avatar images, IBDesignable to make all changes via storyboard.
  • ShinpuruImage - Syntactic Sugar for Accelerate/vImage and Core Image Filters.
  • ImagePickerSheetController - ImagePickerSheetController is like the custom photo action sheet in iMessage just without the glitches.
  • ComplimentaryGradientView - Create complementary gradients generated from dominant and prominent colors in supplied image. Inspired by Grade.js.
  • ImageSlideshow - Swift image slideshow with circular scrolling, timer and full screen viewer.
  • Imaginary - Remote images, as easy as one, two, three.
  • PPAssetsActionController - Highly customizable Action Sheet Controller with Assets Preview.
  • Vulcan - Multi image downloader with priority in Swift.
  • FacebookImagePicker - Facebook album photo picker written in Swift.
  • Lightbox - A convenient and easy to use image viewer for your iOS app.
  • Ebblink - An iOS SDK for sharing photos that automatically expire and can be deleted at any time.
  • Sharaku - Instagram-like image filter ViewController.
  • CTPanoramaView - Displays spherical or cylindrical panoramas or 360-photos with touch or motion based control options.
  • Twitter Image Pipline - streamlined framework for fetching and storing images in an application.
  • TinyCrayon - A smart and easy-to-use image masking and cutout SDK for mobile apps.
  • FlexibleImage - A simple way to play with image!
  • TLPhotoPicker - Multiple phassets picker for iOS lib. like a facebook.
  • YapImageManager - A high-performance image downloader written in Swift, powered by YapDatabase.
  • PhotoEditorSDK - A fully customizable photo editor for your app.
  • SimpleImageViewer - A snappy image viewer with zoom and interactive dismissal transition.
  • AZImagePreview - A framework that makes image viewing easy.
  • FaceCropper - Crop faces, inside of your image, with iOS 11 Vision api.
  • Paparazzo - Custom iOS camera and photo picker with editing capabilities.
  • ZImageCropper - A Swift project to crop image in any shape.
  • InitialsImageView - An UIImageView extension that generates letter initials as a placeholder for user profile images, with a randomized background color.
  • DTPhotoViewerController - A fully customizable photo viewer ViewController, inspired by Facebook photo viewer.
  • LetterAvatarKit - A UIImage extension that generates letter-based avatars written in Swift.
  • AXPhotoViewer - An iPhone/iPad photo gallery viewer, useful for viewing a large (or small!) number of photos
  • TJProfileImage - Live rendering of componet’s properties in Interface Builder.
  • Viewer - Image viewer (or Lightbox) with support for local and remote videos and images.
  • OverlayComposite - An asynchronous, multithreaded, image compositing framework written in Swift.
  • MCScratchImageView - A custom ImageView that is used to cover the surface of other view like a scratch card, user can swipe the mulch to see the view below.
  • MetalPetal - A GPU-accelerated image/video processing framework based on Metal.
  • ShadowImageView - ShadowImageView is a iOS 10 Apple Music style image view, help you create elegent image with shadow.
  • Avatar - Generate random user Avatar images using CoreGraphics and QuartzCore.
  • Serrata - Slide image viewer library similar to Twitter and LINE.
  • StyleArt - Style Art library process images using COREML with a set of pre trained machine learning models and convert them to Art style.
  • greedo-layout-for-ios - Full aspect ratio grid layout for iOS.
  • ImageDetect - Detect and crop faces, barcodes and texts inside of your image, with iOS 11 Vision api.
  • THTiledImageView - Provide ultra-high-quality images through tiling techniques.
  • GPUImage3 - GPUImage 3 is a BSD-licensed Swift framework for GPU-accelerated video and image processing using Metal.
  • Harbeth - Metal API for GPU accelerated Graphics and Video and Camera filter framework.🔥💥
  • Gallery - Your next favorite image and video picker.
  • ATGMediaBrowser - Image slide-show viewer with multiple predefined transition styles, and ability to create new transitions with ease.
  • Pixel - An image editor and engine using CoreImage.
  • OnlyPictures - A simple and flexible way to add source of overlapping circular pictures.
  • SFSafeSymbols - Safely access Apple's SF Symbols using static typing.
  • BSZoomGridScrollView - iOS customizable grid style scrollView UI library to display your UIImage array input, designed primarily for SwiftUI as well as to interoperate with UIKit.

back to top

Media Processing

  • SwiftOCR - Fast and simple OCR library written in Swift.
  • QR Code Scanner - QR Code implementation.
  • QRCode - A QRCode generator written in Swift.
  • EFQRCode - A better way to operate two-dimensional code in Swift.
  • NSFWDetector - A NSFW (aka porn) detector with CoreML.

back to top

PDF

  • Reader - PDF Reader Core for iOS.
  • UIView 2 PDF - PDF generator using UIViews or UIViews with an associated XIB.
  • FolioReaderKit - A Swift ePub reader and parser framework for iOS.
  • PDFGenerator - A simple Generator of PDF in Swift. Generate PDF from view(s) or image(s).
  • SimplePDF - Create a simple PDF effortlessly.
  • SwiftPDFGenerator - PDF generator using UIViews; Swift Version of 'UIView 2 PDF'.
  • PSPDFKit - Render PDF, add/edit annotations, fill forms, add/edit pages, view/create digital signatures.
  • TPPDF - Generate PDF using commands and automatic layout.
  • FastPdfKit - A Static Library to be embedded on iOS applications to display pdf documents derived from Fast PDF.
  • UIImagePlusPDF - UIImage extensions to simply use PDF files.

back to top

Streaming

  • HaishinKit.swift - Camera and Microphone streaming library via RTMP, HLS for iOS, macOS.
  • StreamingKit - A fast and extensible gapless AudioPlayer/AudioStreamer for macOS and iOS.
  • Jukebox - Player for streaming local and remote audio files. Written in Swift.
  • LFLiveKit - H264 and AAC Hard coding,support GPUImage Beauty, rtmp transmission,weak network lost frame,Dynamic switching rate.
  • Airstream - A framework for streaming audio between Apple devices using AirPlay.
  • OTAcceleratorCore - A painless way to integrate audio/video(screen sharing) to any iOS applications via Tokbox.

back to top

Video

  • VLC for iOS - VLC is a free and open source multimedia player for iOS.
  • VIMVideoPlayer - A simple wrapper around the AVPlayer and AVPlayerLayer classes.
  • MobilePlayer - A powerful and completely customizable media player for iOS.
  • XCDYouTubeKit - YouTube video player for iOS, tvOS and macOS.
  • AVAnimator - An open source iOS native library that makes it easy to implement non-trivial video/audio enabled apps.
  • Periscope VideoViewController - Video view controller with Periscope fast rewind control.
  • MHVideoPhotoGallery - A Photo and Video Gallery.
  • PlayerView - Player View is a delegated view using AVPlayer of Swift.
  • SRGMediaPlayer-iOS - The SRG Media Player library for iOS provides a simple way to add a universal audio / video player to any iOS application.
  • AVPlayerViewController-Subtitles - AVPlayerViewController-Subtitles is a library to display subtitles on iOS. It's built as a Swift extension and it's very easy to integrate.
  • MPMoviePlayerController-Subtitles - MPMoviePlayerController-Subtitles is a library to display subtitles on iOS. It's built as a Swift extension and it's very easy to integrate.
  • ZFPlayer - Based on AVPlayer, support for the horizontal screen, vertical screen (full screen playback can also lock the screen direction), the upper and lower slide to adjust the volume, the screen brightness, or so slide to adjust the playback progress.
  • Player - video player in Swift, simple way to play and stream media in your iOS or tvOS app.
  • BMPlayer - Video player in swift3 and swift2 for iOS, based on AVPlayer, support the horizontal, vertical screen. support adjust volume, brigtness and seek by slide.
  • VideoPager - Paging Video UI, and some control components is available.
  • ios-360-videos - NYT360Video plays 360-degree video streamed from an AVPlayer.
  • swift-360-videos - Pure swift (no SceneKit) 3D library with focus on video and 360.
  • ABMediaView - UIImageView subclass for drop-in image, video, GIF, and audio display, with functionality for fullscreen and minimization to the bottom-right corner.
  • PryntTrimmerView - A set of UI elements to trim, crop and select frames inside a video.
  • VGPlayer - A simple iOS video player in Swift,Support play local and network,Background playback mode.
  • YoutubeKit - A video player that fully supports Youtube IFrame API and YoutubeDataAPI for easily create a Youtube app.
  • Swift-YouTube-Player - Swift library for embedding and controlling YouTube videos in your iOS applications!
  • JDVideoKit - You can easily transfer your video into Three common video type via this framework.
  • VersaPlayer - Versatile AVPlayer implementation for iOS, macOS, and tvOS.

back to top

Messaging

Also see push notifications

  • XMPPFramework - An XMPP Framework in Objective-C for Mac and iOS.
  • Chatto - A lightweight framework to build chat applications, made in Swift.
  • MessageKit - Eventually, a Swift re-write of JSQMessagesViewController.
  • Messenger - This is a native iOS Messenger app, making realtime chat conversations and audio calls with full offline support.
  • OTTextChatAccelerator - OpenTok Text Chat Accelerator Pack enables text messages between mobile or browser-based devices.
  • chat-sdk-ios - Chat SDK iOS - Open Source Mobile Messenger.
  • AsyncMessagesViewController - A smooth, responsive and flexible messages UI library for iOS.
  • MessageViewController - A SlackTextViewController replacement written in Swift for the iPhone X.
  • SwiftyMessenger - Swift toolkit for passing messages between iOS apps and extensions.
  • Messenger Chat with Firebase - Swift messaging chat app with Firebase Firestore integration.
  • SwiftKafka - Swift SDK for Apache Kafka by IBM.
  • ChatLayout - A lightweight framework to build chat UI that uses custom UICollectionViewLayout to provide full control over the presentation as well as all the tools available in UICollectionView.
  • ExyteChat - SwiftUI Chat UI framework with fully customizable message cells, input view, and a built-in media picker.

back to top

Networking

  • AFNetworking - A delightful iOS and macOS networking framework.
  • RestKit - RestKit is an Objective-C framework for iOS that aims to make interacting with RESTful web services simple, fast and fun.
  • FSNetworking - Foursquare iOS networking library.
  • ASIHTTPRequest - Easy to use CFNetwork wrapper for HTTP requests, Objective-C, macOS and iPhone.
  • Overcoat - Small but powerful library that makes creating REST clients simple and fun.
  • ROADFramework - Attributed-oriented approach for interacting with web services. The framework has built-in json and xml serialization for requests and responses and can be easily extensible.
  • Alamofire - Alamofire is an HTTP networking library written in Swift, from the creator of AFNetworking.
  • Transporter - A tiny library makes uploading and downloading easier.
  • CDZPinger - Easy-to-use ICMP Ping.
  • NSRails - iOS/Mac OS framework for Rails.
  • NKMultipeer - A testable abstraction over multipeer connectivity.
  • CocoaAsyncSocket - Asynchronous socket networking library for Mac and iOS.
  • Siesta - Elegant abstraction for RESTful resources that untangles stateful messes. An alternative to callback- and delegate-based networking.
  • Reachability.swift - Replacement for Apple's Reachability re-written in Swift with closures.
  • OctopusKit - A simplicity but graceful solution for invoke RESTful web service APIs.
  • Moya - Network abstraction layer written in Swift.
  • TWRDownloadManager - A modern download manager based on NSURLSession to deal with asynchronous downloading, management and persistence of multiple files.
  • HappyDns - A Dns library, support custom dns server, dnspod httpdns. Only support A record.
  • Bridge - A simple extensible typed networking library. Intercept and process/alter requests and responses easily.
  • TRON - Lightweight network abstraction layer, written on top of Alamofire.
  • EVCloudKitDao - Simplified access to Apple's CloudKit.
  • EVURLCache - a NSURLCache subclass for handling all web requests that use NSURLRequest.
  • ResponseDetective - Sherlock Holmes of the networking layer.
  • Pitaya - A Swift HTTP / HTTPS networking library just incidentally execute on machines.
  • Just - Swift HTTP for Humans.
  • agent - Minimalistic Swift HTTP request agent for iOS and macOS.
  • Reach - A simple class to check for internet connection availability in Swift.
  • SwiftHTTP - Thin wrapper around NSURLSession in swift. Simplifies HTTP requests.
  • Netdiag - A network diagnosis library. Support Ping/TcpPing/Rtmp/TraceRoute/DNS/external IP/external DNS.
  • AFNetworkingHelper - A custom wrapper over AFNetworking library that we use inside RC extensively.
  • NetKit - A Concise HTTP Framework in Swift.
  • RealReachability - We need to observe the REAL reachability of network. That's what RealReachability do.
  • MonkeyKing - MonkeyKing helps you post messages to Chinese Social Networks.
  • NetworkKit - Lightweight Networking and Parsing framework made for iOS, Mac, WatchOS and tvOS.
  • APIKit - A networking library for building type safe web API client in Swift.
  • ws ☁️ - Elegant JSON WebService in Swift.
  • SPTDataLoader - The HTTP library used by the Spotify iOS client.
  • SWNetworking - Powerful high-level iOS, macOS and tvOS networking library.
  • Networking - Simple HTTP Networking in Swift a NSURLSession wrapper with image caching support.
  • SOAPEngine - This generic SOAP client allows you to access web services using a your iOS app, macOS app and AppleTV app.
  • Swish - Nothing but Net(working).
  • Malibu - Malibu is a networking library built on promises.
  • YTKNetwork - YTKNetwork is a high level request util based on AFNetworking.
  • UnboxedAlamofire - Alamofire + Unbox: the easiest way to download and decode JSON into swift objects.
  • MMLanScan - An iOS LAN Network Scanner library.
  • Domainer - Manage multi-domain url auto mapping ip address table.
  • Restofire - Restofire is a protocol oriented network abstraction layer in swift that is built on top of Alamofire to use services in a declartive way.
  • AFNetworking+RetryPolicy - An objective-c category that adds the ability to set the retry logic for requests made with AFNetworking.
  • SwiftyZeroMQ - ZeroMQ Swift Bindings for iOS, macOS, tvOS and watchOS.
  • Nikka - A super simple Networking wrapper that supports many JSON libraries, Futures and Rx.
  • XMNetworking - A lightweight but powerful network library with simplified and expressive syntax based on AFNetworking.
  • Merhaba - Bonjour networking for discovery and connection between iOS, macOS and tvOS devices.
  • DBNetworkStack - Resource-oritented networking which is typesafe, extendable, composeable and makes testing a lot easier.
  • EFInternetIndicator - A little swift Internet error status indicator using ReachabilitySwift.
  • AFNetworking-Synchronous - Synchronous requests for AFNetworking 1.x, 2.x, and 3.x.
  • QwikHttp - a robust, yet lightweight and simple to use HTTP networking library designed for RESTful APIs.
  • NetClient - Versatile HTTP networking library written in Swift 3.
  • WANetworkRouting - An iOS library to route API paths to objects on client side with request, mapping, routing and auth layers.
  • Reactor - Powering your RAC architecture.
  • SWNetworking - Powerful high-level iOS, macOS and tvOS networking library. from the creator of SWNetworking.
  • Digger - Digger is a lightweight download framework that requires only one line of code to complete the file download task.
  • Ciao - Publish and discover services using mDNS(Bonjour, Zeroconf).
  • Bamboots - Bamboots is a network request framework based on Alamofire, aiming at making network request easier for business development.
  • SolarNetwork - Elegant network abstraction layer in Swift.
  • FGRoute - An easy-to-use library that helps developers to get wifi ssid, router and device ip addresses.
  • RxRestClient - Simple REST Client based on RxSwift and Alamofire.
  • TermiNetwork - A networking library written with Swift 4.0 that supports multi-environment configuration, routing and automatic deserialization.
  • Dots - Lightweight Concurrent Networking Framework.
  • Gem - An extreme light weight system with high performance for managing all http request with automated parser with modal.
  • RMHttp - Lightweight REST library for iOS and watchOS.
  • AlamoRecord - An elegant yet powerful iOS networking layer inspired by ActiveRecord.
  • MHNetwork - Protocol Oriented Network Layer Aim to avoid having bloated singleton NetworkManager.
  • ThunderRequest - A simple URLSession wrapper with a generic protocol based request body approach and easy deserialisation of responses.
  • ReactiveAPI - Write clean, concise and declarative network code relying on URLSession, with the power of RxSwift. Inspired by Retrofit.
  • Squid - Declarative and reactive networking framework based on Combine and providing means for HTTP requests, transparent pagination, and WebSocket communication.
  • Get - A modern Swift web API client built using async/await.

back to top

Newsletters

  • AwesomeiOS Weekly - AwesomeiOS Weekly.
  • iOS Goodies - Weekly iOS newsletter.
  • raywenderlich.com Weekly - sign up to receive the latest tutorials from raywenderlich.com each week.
  • iOS Dev Tools Weekly - The greatest iOS development tools, including websites, desktop and mobile apps, and back-end services.
  • iOS Trivia Weekly - Three challenging questions about iOS development every Wednesday.
  • Indie iOS Focus Weekly - Looking for the best iOS dev links, tutorials, & tips beyond the usual news? Curated by Chris Beshore. Published every Thursday.
  • iOS Dev Weekly - Subscribe to a hand-picked round up of the best iOS development links every week. Free.
  • Swift Weekly Brief - A community-driven weekly newsletter about Swift.org. Curated by Jesse Squires and published for free every Thursday.
  • Server-Side Swift Weekly - A weekly newsletter with the best links related to server-side Swift and cross-platform developer tools. Curated by @maxdesiatov
  • iOS Cookies Newsletter - A weekly digest of new iOS libraries written in Swift.
  • Swift Developments - A weekly curated newsletter containing a hand picked selection of the latest links, videos, tools and tutorials for people interested in designing and developing their own iOS, WatchOS and AppleTV apps using Swift.
  • Mobile Developers Cafe - A weekly newsletter for Mobile developers with loads of iOS content.
  • Indie Watch - A weekly newsletter featuring the best apps made by indie iOS developers.
  • SwiftLee - A weekly blog about Swift, iOS and Xcode Tips and Tricks.

back to top

Notifications

Push Notifications

  • Orbiter - Push Notification Registration for iOS.
  • PEM - Automatically generate and renew your push notification profiles.
  • Knuff - The debug application for Apple Push Notification Service (APNS).
  • FBNotifications - Facebook Analytics In-App Notifications Framework.
  • NWPusher - macOS and iOS application and framework to play with the Apple Push Notification service (APNs).
  • SimulatorRemoteNotifications - Library to send mock remote notifications to the iOS simulator.
  • APNSUtil - Library makes code simple settings and landing for apple push notification service.

back to top

Push Notification Providers

Most of these are paid services, some have free tiers.

back to top

Objective-C Runtime

Objective-C Runtime wrappers, libraries and tools.

  • Lumos - A light Swift wrapper around Objective-C Runtime.
  • Swizzlean - An Objective-C Swizzle Helper Class.

back to top

Optimization

  • Unreachable - Unreachable code path optimization hint for Swift.
  • SmallStrings - Reduce localized .strings file sizes by 80%.

back to top

Other Awesome Lists

Other amazingly awesome lists can be found in the

back to top

Parsing

CSV

  • CSwiftV - A csv parser written in swift conforming to rfc4180.
  • CSV.swift - CSV reading and writing library written in Swift.
  • CodableCSV - Read and write CSV files row-by-row & field-by-field or through Swift's Codable interface.

back to top

JSON

  • SBJson - This framework implements a strict JSON parser and generator in Objective-C.
  • Mantle - Model framework for Cocoa and Cocoa Touch.
  • Groot - Convert JSON dictionaries and arrays to and from Core Data managed objects.
  • PropertyMapper - Data mapping and validation with minimal amount of code.
  • JSONModel - Magical Data Modeling Framework for JSON. Create rapidly powerful, atomic and smart data model classes.
  • SwiftyJSON - The better way to deal with JSON data in Swift.
  • FastEasyMapping - Serialize & deserialize JSON fast.
  • ObjectMapper - A framework written in Swift that makes it easy for you to convert your Model objects (Classes and Structs) to and from JSON.
  • JASON - JSON parsing with outstanding performances and convenient operators.
  • Gloss - A shiny JSON parsing library in Swift.
  • SwiftyJSONAccelerator - Generate Swift 5 model files from JSON with Codeable support.
  • alexander - An extremely simple JSON helper written in Swift.
  • Freddy - A reusable framework for parsing JSON in Swift.
  • mapper - A JSON deserialization library for Swift.
  • Alembic - Functional JSON parsing, mapping to objects, and serialize to JSON.
  • Arrow 🏹 - Elegant JSON Parsing in Swift.
  • JSONExport - JSONExport is a desktop application for macOS which enables you to export JSON objects as model classes with their associated constructors, utility methods, setters and getters in your favorite language.
  • Elevate - Elevate is a JSON parsing framework that leverages Swift to make parsing simple, reliable and composable.
  • MJExtension - A fast, convenient and nonintrusive conversion between JSON and model. Your model class don't need to extend another base class. You don't need to modify any model file.
  • AlamofireObjectMapper - An Alamofire extension which converts JSON response data into swift objects using ObjectMapper.
  • JAYSON - Strict and Scalable JSON library.
  • HandyJSON - A handy swift JSON-object serialization/deserialization library for Swift.
  • Marshal - Marshaling the typeless wild west of [String: Any] (Protocol based).
  • Motis - Easy JSON to NSObject mapping using Cocoa's key value coding (KVC).
  • NSTEasyJSON - The easiest way to deal with JSON data in Objective-C (similar to SwiftyJSON).
  • Serpent - A protocol to serialize Swift structs and classes for encoding and decoding.
  • FlatBuffersSwift - This project brings FlatBuffers (an efficient cross platform serialization library) to Swift.
  • CodableAlamofire - An extension for Alamofire that converts JSON data into Decodable objects (Swift 4).
  • WAMapping - A library to turn dictionary into object and vice versa for iOS. Designed for speed!
  • Himotoki - A type-safe JSON decoding library purely written in Swift.
  • PMHTTP - Swift/Obj-C HTTP framework with a focus on REST and JSON.
  • NativeJSONMapper - Simple Swift 4 encoding & decoding.
  • PMJSON - Pure Swift JSON encoding/decoding library.
  • jsoncafe.com - Online Template driven Model Class Generator from JSON.
  • Mappable - lightweight and powerful JSON object mapping library, specially optimized for immutable properties.

back to top

XML & HTML

  • AEXML - Simple and lightweight XML parser written in Swift.
  • Ji - XML/HTML parser for Swift.
  • Ono - A sensible way to deal with XML & HTML for iOS & macOS.
  • Fuzi - A fast & lightweight XML & HTML parser in Swift with XPath & CSS support.
  • Kanna - Kanna(鉋) is an XML/HTML parser for macOS/iOS.
  • SwiftyXMLParser - Simple XML Parser implemented in Swift.
  • HTMLKit - An Objective-C framework for your everyday HTML needs.
  • SWXMLHash - Simple XML parsing in Swift.
  • SwiftyXML - The most swifty way to deal with XML data in swift 4.
  • XMLCoder - Encoder & Decoder for XML using Swift's Codable protocols.
  • ZMarkupParser - Convert HTML strings into NSAttributedString with customized styles and tags.

back to top

Other Parsing

  • WKZombie - WKZombie is a Swift framework for iOS/macOS to navigate within websites and collect data without the need of User Interface or API, also known as Headless browser. It can be used to run automated tests or manipulate websites using Javascript.
  • URLPreview - An NSURL extension for showing preview info of webpages.
  • FeedKit - An RSS and Atom feed parser written in Swift.
  • Erik - Erik is an headless browser based on WebKit. An headless browser allow to run functional tests, to access and manipulate webpages using javascript.
  • URLEmbeddedView - Automatically caches the object that is confirmed the Open Graph Protocol, and displays it as URL embedded card.
  • SwiftCssParser - A Powerful , Extensible CSS Parser written in pure Swift.
  • RLPSwift - Recursive Length Prefix encoding written in Swift.
  • AcknowledgementsPlist - AcknowledgementsPlist manages the licenses of libraries that depend on your iOS app.
  • CoreXLSX - Excel spreadsheet (XLSX) format support in pure Swift.
  • SVGView - SVG parser and renderer written in SwiftUI.
  • CreateAPI - Delightful code generation for OpenAPI specs for Swift written in Swift.
  • NetNewsWire - It’s a free and open-source feed reader for macOS and iOS.

back to top

Passbook

  • passbook - Passbook gem let's you create pkpass for passbook iOS 6+.
  • Dubai - Generate and Preview Passbook Passes.
  • Passkit - Design, Create and validate Passbook Passes.

back to top

Payments

  • Caishen - A Payment Card UI & Validator for iOS.
  • Stripe - Payment integration on your app with PAY. Suitable for people with low knowledge on Backend.
  • Braintree - Free payment processing on your first $50k. Requires Backend.
  • Venmo Make and accept payments in your iOS app via Venmo.
  • Moltin - Add eCommerce to your app with a simple SDK, so you can create a store and sell physical products, no backend required.
  • PatronKit - A framework to add patronage to your apps.
  • SwiftyStoreKit - Lightweight In App Purchases Swift framework for iOS 8.0+ and macOS 9.0+
  • InAppFramework - In App Purchase Manager framework for iOS.
  • SwiftInAppPurchase - Simply code In App Purchases with this Swift Framework.
  • monza - Ruby Gem for Rails - Easy iTunes In-App Purchase Receipt validation, including auto-renewable subscriptions.
  • PayPal - Accept payments in your iOS app via PayPal.
  • card.io-iOS-SDK - card.io provides fast, easy credit card scanning in mobile apps.
  • SwiftLuhn - Debit/Credit card validation port of the Luhn Algorithm in Swift.
  • ObjectiveLuhn - Luhn Credit Card Validation Algorithm.
  • RMStore - A lightweight iOS library for In-App Purchases.
  • MFCard - Easily integrate Credit Card payments in iOS App / Customisable Card UI.
  • TPInAppReceipt - Reading and Validating In App Store Receipt.
  • iCard - Bank Card Generator with Swift using SnapKit DSL.
  • CreditCardForm-iOS - CreditCardForm is iOS framework that allows developers to create the UI which replicates an actual Credit Card.
  • merchantkit - A modern In-App Purchases management framework for iOS.
  • TipJarViewController - Easy, drop-in tip jar for iOS apps.
  • FramesIos - Payment Form UI and Utilities in Swift.
  • YRPayment - Better payment user experience library with cool animation in Swift.
  • AnimatedCardInput — Easy to use library with customisable components for input of Credit Card data.

back to top

Permissions

  • Proposer - Make permission request easier (Supports Camera, Photos, Microphone, Contacts, Location).
  • ISHPermissionKit - A unified way for iOS apps to request user permissions.
  • ClusterPrePermissions - Reusable pre-permissions utility that lets developers ask users for access in their own dialog, before making the system-based request.
  • Permission - A unified API to ask for permissions on iOS.
  • STLocationRequest - A simple and elegant 3D-Flyover location request screen written Swift.
  • PAPermissions - A unified API to ask for permissions on iOS.
  • AREK - AREK is a clean and easy to use wrapper over any kind of iOS permission.
  • SPPermissions - Ask permissions on Swift. Available List, Dialog & Native interface. Can check state permission.

back to top

Podcasts

back to top

Project setup

  • crafter - CLI that allows you to configure iOS project's template using custom DSL syntax, simple to use and quite powerful.
  • liftoff - Another CLI for creating iOS projects.
  • amaro - iOS Boilerplate full of delights.
  • chairs - Swap around your iOS Simulator Documents.
  • SwiftPlate - Easily generate cross platform Swift framework projects from the command line.
  • xcproj - Read and update Xcode projects.
  • Tuist - A tool to create, maintain and interact with Xcode projects at scale.
  • SwiftKit - Start your next Open-Source Swift Framework.
  • swift5-module-template - A starting point for any Swift 5 module that you want other people to include in their projects.

back to top

Prototyping

back to top

Rapid Development

  • Playgrounds - Playgrounds for Objective-C for extremely fast prototyping / learning.
  • MMBarricade - Runtime configurable local server for iOS apps.
  • STV Framework - Native visual iOS development.
  • swiftmon - swiftmon restarts your swift application in case of any file change.
  • Model2App - Turn your Swift data model into a working CRUD app.

back to top

Reactive Programming

  • RxSwift - Reactive Programming in Swift.
  • RxOptional - RxSwift extensions for Swift optionals and "Occupiable" types.
  • ReactiveTask - Flexible, stream-based abstraction for launching processes.
  • ReactiveCocoa - Streams of values over time.
  • RxMediaPicker - A reactive wrapper built around UIImagePickerController.
  • ReactiveCoreData - ReactiveCoreData (RCD) is an attempt to bring Core Data into the ReactiveCocoa (RAC) world.
  • ReSwift - Unidirectional Data Flow in Swift - Inspired by Redux.
  • ReactiveKit - ReactiveKit is a collection of Swift frameworks for reactive and functional reactive programming.
  • RxPermission - RxSwift bindings for Permissions API in iOS.
  • RxAlamofire - RxSwift wrapper around the elegant HTTP networking in Swift Alamofire.
  • RxRealm - Rx wrapper for Realm's collection types.
  • RxMultipeer - A testable RxSwift wrapper around MultipeerConnectivity.
  • RxBluetoothKit - iOS & macOS Bluetooth library for RxSwift.
  • RxGesture - RxSwift reactive wrapper for view gestures.
  • NSObject-Rx - Handy RxSwift extensions on NSObject, including rx_disposeBag.
  • RxCoreData - RxSwift extensions for Core Data.
  • RxAutomaton - RxSwift + State Machine, inspired by Redux and Elm.
  • ReactiveArray - An array class implemented in Swift that can be observed using ReactiveCocoa's Signals.
  • Interstellar - Simple and lightweight Functional Reactive Coding in Swift for the rest of us.
  • ReduxSwift - Predictable state container for Swift apps too.
  • Aftermath - Stateless message-driven micro-framework in Swift.
  • RxKeyboard - Reactive Keyboard in iOS.
  • JASONETTE-iOS - Native App over HTTP. Create your own native iOS app with nothing but JSON.
  • ReactiveSwift - Streams of values over time by ReactiveCocoa group.
  • Listenable - Swift object that provides an observable platform.
  • Reactor - Unidirectional Data Flow using idiomatic Swift—inspired by Elm and Redux.
  • Snail - An observables framework for Swift.
  • RxWebSocket - Reactive extension over Starscream for websockets.
  • ACKReactiveExtensions - Useful extensions for ReactiveCocoa
  • ReactiveLocation - CoreLocation made reactive
  • Hanson - Lightweight observations and bindings in Swift, with support for KVO and NotificationCenter.
  • Observable - The easiest way to observe values in Swift.
  • SimpleApiClient - A configurable api client based on Alamofire4 and RxSwift4 for iOS.
  • VueFlux - Unidirectional Data Flow State Management Architecture for Swift - Inspired by Vuex and Flux.
  • RxAnimated - Animated RxCocoa bindings.
  • BindKit - Two-way data binding framework for iOS. Only one API to learn.
  • STDevRxExt - STDevRxExt contains some extension functions for RxSwift and RxCocoa which makes our live easy.
  • RxReduce - Lightweight framework that ease the implementation of a state container pattern in a Reactive Programming compliant way.
  • RxCoordinator - Powerful navigation library for iOS based on the coordinator pattern.
  • RxAlamoRecord Combines the power of the AlamoRecord and RxSwift libraries to create a networking layer that makes interacting with API's easier than ever reactively.
  • CwlSignal A Swift framework for reactive programming.
  • LightweightObservable - A lightweight implementation of an observable sequence that you can subscribe to.
  • Bindy - Simple, lightweight swift bindings with KVO support and easy to read syntax.
  • OpenCombine — Open source implementation of Apple's Combine framework for processing values over time.
  • OneWay - A Swift library for state management with unidirectional data flow.
  • Verge - Verge is a faster and scalable state management library for UIKit and SwiftUI

back to top

React-Like

  • Render - Swift and UIKit a la React.
  • Katana - Swift apps a la React and Redux.
  • TemplateKit - React-inspired framework for building component-based user interfaces in Swift.
  • CoreEvents - Simple library with C#-like events.
  • Tokamak - React-like framework providing a declarative API for building native UI components with easy to use one-way data binding.

back to top

Reference

  • Swift Cheat Sheet - A quick reference cheat sheet for common, high level topics in Swift.
  • Objective-C Cheat Sheet - A quick reference cheat sheet for common, high level topics in Objective-C.
  • SwiftSnippets - A collection of Swift snippets to be used in Xcode.
  • App Store Checklist - A checklist of what to look for before submitting your app to the App Store.
  • whats-new-in-swift-4 - An Xcode playground showcasing the new features in Swift 4.0.
  • WWDC-Recap - A collection of session summaries in markdown format, from WWDC 19 & 17.
  • Awesome-ios - A curated list of awesome iOS ecosystem.

back to top

Reflection

  • Reflection - Reflection provides an API for advanced reflection at runtime including dynamic construction of types.
  • Reflect - Reflection, Dict2Model, Model2Dict, Archive.
  • EVReflection - Reflection based JSON encoding and decoding. Including support for NSDictionary, NSCoding, Printable, Hashable and Equatable.
  • JSONNeverDie - Auto reflection tool from JSON to Model, user friendly JSON encoder / decoder, aims to never die.
  • SwiftKVC - Key-Value Coding (KVC) for native Swift classes and structs.
  • Runtime - A Swift Runtime library for viewing type info, and the dynamic getting and setting of properties.

back to top

Regex

  • Regex - A Swift µframework providing an NSRegularExpression-backed Regex type.
  • SwiftRegex - Perl-like Regex =~ operator for Swift.
  • PySwiftyRegex - Easily deal with Regex in Swift in a Pythonic way.
  • Regex - Regular expressions for swift.
  • Regex - Regex class for Swift. Wraps NSRegularExpression.
  • sindresorhus/Regex - Swifty regular expressions, fully tested & documented, and with correct Unicode handling.

back to top

SDK

Official

  • Spotify Spotify iOS SDK.
  • SpotifyLogin Spotify SDK Login in Swift.
  • Facebook Facebook iOS SDK.
  • Google Analytics Google Analytics SDK for iOS.
  • Paypal iOS SDK The PayPal Mobile SDKs enable native apps to easily accept PayPal and credit card payments.
  • Pocket SDK for saving stuff to Pocket.
  • Tumblr Library for easily integrating Tumblr data into your iOS or macOS application.
  • Evernote Evernote SDK for iOS.
  • Box iOS + macOS SDK for the Box API.
  • OneDrive Live SDK for iOS.
  • Stripe Stripe bindings for iOS and macOS.
  • Venmo
  • AWS Amazon Web Services Mobile SDK for iOS.
  • Zendesk Zendesk Mobile SDK for iOS.
  • Dropbox SDKs for Drop-ins and Dropbox Core API.
  • Firebase Mobile (and web) application development platform.
  • ResearchKit ResearchKit is an open source software framework that makes it easy to create apps for medical research or for other research projects.
  • Primer - Easy SDK for creating personalized landing screens, signup, and login flows on a visual editor with built in a/b/n testing and analytics.
  • Azure - Client library for accessing Azure Storage on an iOS device.
  • 1Password - 1Password Extension for iOS Apps.
  • CareKit - CareKit is an open source software framework for creating apps that help people better understand and manage their health. By Apple.
  • Shopify - Shopify’s Mobile Buy SDK makes it simple to sell physical products inside your mobile app.
  • Pinterest - Pinterest iOS SDK.
  • playkit-ios - PlayKit: Kaltura Player SDK for iOS.
  • algoliasearch-client-swift - Algolia Search API Client for Swift.
  • twitter-kit-ios - Twitter Kit is a native SDK to include Twitter content inside mobile apps.
  • rides-ios-sdk - Uber Rides iOS SDK (beta).
  • Apphud - A complete solution to integrate auto-renewable subscriptions and regular in-app purchases in 30 minutes with no server code required.
  • Adapty - Integrate in-app subscriptions and a/b testing for them with 3 lines of code.

back to top

Unofficial

  • STTwitter A stable, mature and comprehensive Objective-C library for Twitter REST API 1.1.
  • FHSTwitterEngine Twitter API for Cocoa developers.
  • Giphy Giphy API client for iOS in Objective-C.
  • UberKit - A simple, easy-to-use Objective-C wrapper for the Uber API.
  • InstagramKit - Instagram iOS SDK.
  • DribbbleSDK - Dribbble iOS SDK.
  • objectiveflickr - ObjectiveFlickr, a Flickr API framework for Objective-C.
  • Easy Social - Twitter & Facebook Integration.
  • das-quadrat - A Swift wrapper for Foursquare API. iOS and macOS.
  • SocialLib - SocialLib handles sharing message to multiple social media.
  • PokemonKit - Pokeapi wrapper, written in Swift.
  • TJDropbox - A Dropbox v2 client library written in Objective-C
  • GitHub.swift - :octocat: Unofficial GitHub API client in Swift
  • CloudRail SI - Abstraction layer / unified API for multiple API providers. Interfaces eg for Cloud Storage (Dropbox, Google, ...), Social Networks (Facebook, Twitter, ...) and more.
  • Medium SDK - Swift - Unofficial Medium API SDK in Swift with sample project.
  • Swifter - 🐦 A Twitter framework for iOS & macOS written in Swift.
  • SlackKit - a Slack client library for iOS and macOS written in Swift.
  • RandomUserSwift - Swift Framework to Generate Random Users - An Unofficial SDK for randomuser.me.
  • PPEventRegistryAPI - Swift 3 Framework for Event Registry API (eventregistry.org).
  • UnsplashKit - Swift client for Unsplash.
  • Swiftly Salesforce - An easy-to-use framework for building iOS apps that integrate with Salesforce, using Swift and promises.
  • Spartan - An Elegant Spotify Web API Library Written in Swift for iOS and macOS.
  • BigBoard - An Elegant Financial Markets Library Written in Swift that makes requests to Yahoo Finance API's under the hood.
  • BittrexApiKit - Simple and complete Swift wrapper for Bittrex Exchange API.
  • SwiftyVK Library for easy interact with VK social network API written in Swift.
  • ARKKit - ARK Ecosystem Cryptocurrency API Framework for iOS & macOS, written purely in Swift 4.0.
  • SwiftInstagram - Swift Client for Instagram API.
  • SwiftyArk - A simple, lightweight, fully-asynchronous cryptocurrency framework for the ARK Ecosystem.
  • PerfectSlackAPIClient - A Slack API Client for the Perfect Server-Side Swift Framework.
  • Mothership - Tunes Connect Library inspired by FastLane.
  • SwiftFlyer - An API wrapper for bitFlyer that supports all providing API.
  • waterwheel.swift - The Waterwheel Swift SDK provides classes to natively connect iOS, macOS, tvOS, and watchOS applications to Drupal 7 and 8.
  • ForecastIO - A Swift library for the Forecast.io Dark Sky API.
  • JamfKit - A JSS communication framework written in Swift.

back to top

Security

  • cocoapods-keys - A key value store for storing environment and application keys.
  • simple-touch - Very simple swift wrapper for Biometric Authentication Services (Touch ID) on iOS.
  • SwiftPasscodeLock - An iOS passcode lock with TouchID authentication written in Swift.
  • Smile-Lock - A library for make a beautiful Passcode Lock View.
  • zxcvbn-ios - A realistic password strength estimator.
  • TPObfuscatedString - Simple String obfuscation using core Swift.
  • LTHPasscodeViewController - An iOS passcode lockscreen replica (from Settings), with TouchID and simple (variable length) / complex support.
  • iOS-App-Security-Class - Simple class to check if iOS app has been cracked, being debugged or enriched with custom dylib and as well detect jailbroken environment.
  • BiometricAuth - Simple framework for biometric authentication (via TouchID) in your application.
  • SAPinViewController - Simple and easy to use default iOS PIN screen. This simple library allows you to draw a fully customisable PIN screen same as the iOS default PIN view. My inspiration to create this library was form THPinViewController, however SAPinViewController is completely implemented in Swift. Also the main purpose of creating this library was to have simple, easy to use and fully customisable PIN screen.
  • TOPasscodeViewController - A modal passcode input and validation view controller for iOS.
  • BiometricAuthentication - Use Apple FaceID or TouchID authentication in your app using BiometricAuthentication.
  • KKPinCodeTextField - A customizable verification code textField for phone verification codes, passwords etc.
  • Virgil SWIFT PFS SDK - An SDK that allows developers to add the Perfect Forward Secrecy (PFS) technologies to their digital solutions to protect previously intercepted traffic from being decrypted even if the main Private Key is compromised.
  • Virgil Security Objective-C/Swift SDK - An SDK which allows developers to add full end-to-end security to their existing digital solutions to become HIPAA and GDPR compliant and more using Virgil API.
  • Vault - Safe place for your encryption keys.
  • SecurePropertyStorage - Helps you define secure storages for your properties using Swift property wrappers.

back to top

Encryption

  • AESCrypt-ObjC - A simple and opinionated AES encrypt / decrypt Objective-C class that just works.
  • IDZSwiftCommonCrypto - A wrapper for Apple's Common Crypto library written in Swift.
  • Arcane - Lightweight wrapper around CommonCrypto in Swift.
  • SwiftMD5 - A pure Swift implementation of MD5.
  • SwiftHash - Hash in Swift.
  • SweetHMAC - A tiny and easy to use Swift class to encrypt strings using HMAC algorithms.
  • SwCrypt - RSA public/private key generation, RSA, AES encryption/decryption, RSA sign/verify in Swift with CommonCrypto in iOS and macOS.
  • SwiftSSL - An Elegant crypto toolkit in Swift.
  • SwiftyRSA - RSA public/private key encryption in Swift.
  • EnigmaKit - Enigma encryption in Swift.
  • Themis - High-level crypto library, providing basic asymmetric encryption, secure messaging with forward secrecy and secure data storage, supports iOS/macOS, Android and different server side platforms.
  • Obfuscator-iOS - Secure your app by obfuscating all the hard-coded security-sensitive strings.
  • swift-sodium - Safe and easy to use crypto for iOS.
  • CryptoSwift - Crypto related functions and helpers for Swift implemented in Swift programming language.
  • SCrypto - Elegant Swift interface to access the CommonCrypto routines.
  • SipHash - Simple and secure hashing in Swift with the SipHash algorithm.
  • RNCryptor - CCCryptor (AES encryption) wrappers for iOS and Mac in Swift. -- For ObjC, see RNCryptor/RNCryptor-objc.
  • CatCrypto - An easy way for hashing and encryption.
  • SecureEnclaveCrypto - Demonstration library for using the Secure Enclave on iOS.
  • RSASwiftGenerator - Util for generation RSA keys on your client and save to keychain or cover into Data.
  • Virgil Security Objective-C/Swift Crypto Library - A high-level cryptographic library that allows to perform all necessary operations for securely storing and transferring data.
  • JOSESwift - A framework for the JOSE standards JWS, JWE, and JWK written in Swift.

back to top

Keychain

  • UICKeyChainStore - UICKeyChainStore is a simple wrapper for Keychain on iOS.
  • Valet - Securely store data in the iOS or macOS Keychain without knowing a thing about how the Keychain works.
  • Locksmith - A powerful, protocol-oriented library for working with the keychain in Swift.
  • KeychainAccess - Simple Swift wrapper for Keychain that works on iOS and macOS.
  • Keychains - Because you should care... about the security... of your shit.
  • Lockbox - Objective-C utility class for storing data securely in the key chain.
  • SAMKeychain - Simple Objective-C wrapper for the keychain that works on Mac and iOS.
  • SwiftKeychainWrapper - A simple wrapper for the iOS Keychain to allow you to use it in a similar fashion to User Defaults.
  • SwiftyKeychainKit - Keychain wrapper with the benefits of static typing and convenient syntax, support for primitive types, Codable, NSCoding.

back to top

Server

Server side projects supporting coroutines, Linux, MacOS, iOS, Apache Modules, Async calls, libuv and more.

  • Perfect - Server-side Swift. The Perfect library, application server, connectors and example apps.
  • Swifter - Tiny http server engine written in Swift programming language.
  • CocoaHTTPServer - A small, lightweight, embeddable HTTP server for macOS or iOS applications.
  • Curassow - Swift HTTP server using the pre-fork worker model.
  • Zewo - Lightweight library for web server applications in Swift on macOS and Linux powered by coroutines.
  • Vapor - Elegant web framework for Swift that works on iOS, macOS, and Ubuntu.
  • swiftra - Sinatra-like DSL for developing web apps in Swift.
  • blackfire - A fast HTTP web server based on Node.js and Express written in Swift.
  • swift-http - HTTP Implementation for Swift on Linux and macOS.
  • Trevi - libuv base Swift web HTTP server framework.
  • Express - Swift Express is a simple, yet unopinionated web application server written in Swift.
  • Taylor - A lightweight library for writing HTTP web servers with Swift.
  • Frank - Frank is a DSL for quickly writing web applications in Swift.
  • Kitura - A Swift Web Framework and HTTP Server.
  • Swifton - A Ruby on Rails inspired Web Framework for Swift that runs on Linux and macOS.
  • Dynamo - High Performance (nearly)100% Swift Web server supporting dynamic content.
  • Redis - Pure-Swift Redis client implemented from the original protocol spec. macOS + Linux compatible.
  • NetworkObjects - Swift backend / server framework (Pure Swift, Supports Linux).
  • Noze.io - Evented I/O streams a.k.a. Node.js for Swift.
  • Lightning - A Swift Multiplatform Web and Networking Framework.
  • SwiftGD - A simple Swift wrapper for libgd.
  • Jobs - A job system for Swift backends.
  • ApacheExpress - Write Apache Modules in Swift!
  • GCDWebServer - Lightweight GCD based HTTP server for macOS & iOS (includes web based uploader & WebDAV server).
  • Embassy - Super lightweight async HTTP server library in pure Swift runs in iOS / MacOS / Linux.
  • smoke-framework - A light-weight server-side service framework written in the Swift programming language.

back to top

Style Guides

back to top

Testing

TDD / BDD

  • Kiwi - A behavior-driven development library for iOS development.
  • Specta - A light-weight TDD / BDD framework for Objective-C & Cocoa.
  • Quick - A behavior-driven development framework for Swift and Objective-C.
  • XcodeCoverage - Code coverage for Xcode projects.
  • OHHTTPStubs - Stub your network requests easily! Test your apps with fake network data and custom response time, response code and headers!
  • Dixie - Dixie is an open source Objective-C testing framework for altering object behaviours.
  • gh-unit - Test Framework for Objective-C.
  • Nimble - A Matcher Framework for Swift and Objective-C
  • Sleipnir - BDD-style framework for Swift.
  • SwiftCheck - QuickCheck for Swift.
  • Spry - A Mac and iOS Playgrounds Unit Testing library based on Nimble.
  • swift-corelibs-xctest - The XCTest Project, A Swift core library for providing unit test support.
  • PlaygroundTDD - Small library to easily run your tests directly within a Playground.

back to top

A/B Testing

  • Switchboard - Switchboard - easy and super light weight A/B testing for your mobile iPhone or android app. This mobile A/B testing framework allows you with minimal servers to run large amounts of mobile users.
  • SkyLab - Multivariate & A/B Testing for iOS and Mac.
  • MSActiveConfig - Remote configuration and A/B Testing framework for iOS.
  • ABKit - AB testing framework for iOS.

back to top

UI Testing

  • appium - Appium is an open source test automation framework for use with native and hybrid mobile apps.
  • robotframework-appiumlibrary - AppiumLibrary is an appium testing library for RobotFramework.
  • Cucumber - Behavior driver development for iOS.
  • Kif - An iOS Functional Testing Framework.
  • Subliminal - An understated approach to iOS integration testing.
  • ios-driver - Test any iOS native, hybrid, or mobile web application using Selenium / WebDriver.
  • Remote - Control your iPhone from inside Xcode for end-to-end testing.
  • LayoutTest-iOS - Write unit tests which test the layout of a view in multiple configurations.
  • EarlGrey - 🍵 iOS UI Automation Test Framework.
  • UI Testing Cheat Sheet - How do I test this with UI Testing?
  • Bluepill - Bluepill is a reliable iOS testing tool that runs UI tests using multiple simulators on a single machine.
  • Flawless App - tool for visual quality check of mobile app in a real-time. It compares initial design with the actual implementation right inside iOS simulator.
  • TouchVisualizer - Lightweight touch visualization library in Swift. A single line of code and visualize your touches!
  • UITestHelper - UITest helper library for creating readable and maintainable tests.
  • ViewInspector - Runtime inspection and unit testing of SwiftUI views
  • AutoMate - XCTest extensions for writing UI automation tests.
  • Marathon Runner - Fast, platform-independent test runner focused on performance and stability execute tests.

back to top

Other Testing

  • ETTrace - Locally measure performance of your app, without Xcode or Instruments.
  • NaughtyKeyboard - The Big List of Naughty Strings is a list of strings which have a high probability of causing issues when used as user-input data. This is a keyboard to help you test your app from your iOS device.
  • Fakery - Swift fake data generator.
  • DVR - Network testing for Swift.
  • Cuckoo - First boilerplate-free mocking framework for Swift.
  • Vinyl - Network testing à la VCR in Swift.
  • Mockit - A simple mocking framework for Swift, inspired by the famous Mockito for Java.
  • Cribble - Swifty tool for visual testing iPhone and iPad apps.
  • second_curtain - Upload failing iOS snapshot tests cases to S3.
  • trainer - Convert xcodebuild plist files to JUnit reports.
  • Buildasaur - Automatic testing of your Pull Requests on GitHub and BitBucket using Xcode Server. Keep your team productive and safe. Get up and running in minutes.
  • Kakapo - Dynamically Mock server behaviors and responses in Swift.
  • AcceptanceMark Tool to auto-generate Xcode tests classes from Markdown tables.
  • MetovaTestKit - A collection of testing utilities to turn crashing test suites into failing test suites.
  • MirrorDiffKit - Pretty diff between any structs or classes.
  • SnappyTestCase - iOS Simulator type agnostic snapshot testing, built on top of the FBSnapshotTestCase.
  • XCTestExtensions - XCTestExtensions is a Swift extension that provides convenient assertions for writing Unit Test.
  • OCMock - Mock objects for Objective-C.
  • Mockingjay - An elegant library for stubbing HTTP requests with ease in Swift.
  • PinpointKit - Let your testers and users send feedback with annotated screenshots and logs using a simple gesture.
  • iOS Snapshot Test Case — Snapshot test your UIViews and CALayers on iOS and tvOS.
  • DataFixture - Creation of data model easily, with no headache.
  • SnapshotTesting - Delightful Swift snapshot testing.
  • Mockingbird - Simplify software testing, by easily mocking any system using HTTP/HTTPS, allowing a team to test and develop against a service that is not complete, unstable or just to reproduce planned cases.

back to top

Text

  • Twitter Text Obj - An Objective-C implementation of Twitter's text processing library.
  • Nimbus - Nimbus is a toolkit for experienced iOS software designers.
  • NSStringEmojize - A category on NSString to convert Emoji Cheat Sheet codes to their equivalent Unicode characters.
  • MMMarkdown - An Objective-C static library for converting Markdown to HTML.
  • DTCoreText - Methods to allow using HTML code with CoreText.
  • DTRichTextEditor - A rich-text editor for iOS.
  • NBEmojiSearchView - A searchable emoji dropdown view.
  • Pluralize.swift - Great Swift String Pluralize Extension.
  • RichEditorView - RichEditorView is a simple, modular, drop-in UIView subclass for Rich Text Editing.
  • Money - Swift value types for working with money & currency.
  • PhoneNumberKit - A Swift framework for parsing, formatting and validating international phone numbers. Inspired by Google's libphonenumber.
  • YYText - Powerful text framework for iOS to display and edit rich text.
  • Format - A Swift Formatter Kit.
  • Tribute - Programmatic creation of NSAttributedString doesn't have to be a pain.
  • EmojiKit - Effortless emoji-querying in Swift.
  • Roman - Seamless Roman numeral conversion in Swift.
  • ZSSRichTextEditor - A beautiful rich text WYSIWYG editor for iOS with a syntax highlighted source view.
  • pangu.Objective-C - Paranoid text spacing in Objective-C.
  • SwiftString - A comprehensive, lightweight string extension for Swift.
  • Marklight - Markdown syntax highlighter for iOS.
  • MarkdownTextView - Rich Markdown editing control for iOS.
  • TextAttributes - An easier way to compose attributed strings.
  • Reductio - Automatic summarizer text in Swift.
  • SmarkDown - A Pure Swift implementation of the markdown mark-up language.
  • SwiftyMarkdown - Converts Markdown files and strings into NSAttributedString.
  • SZMentions - Library to help handle mentions.
  • SZMentionsSwift - Library to help handle mentions.
  • Heimdall - Heimdall is a wrapper around the Security framework for simple encryption/decryption operations.
  • NoOptionalInterpolation - Get rid of "Optional(...)" and "nil" in string interpolation. Easy pluralization.
  • Smile Emoji in Swift.
  • ISO8601 Super lightweight ISO8601 Date Formatter in Swift.
  • Translucid - Lightweight library to set an Image as text background.
  • FormatterKit - stringWithFormat: for the sophisticated hacker set.
  • BonMot - Beautiful, easy attributed strings in Swift.
  • SwiftValidators - String validation for iOS developed in Swift. Inspired by validator.js.
  • StringStylizer - Type strict builder class for NSAttributedString.
  • SwiftyAttributes - Swift extensions that make it a breeze to work with attributed strings.
  • MarkdownKit - A simple and customizable Markdown Parser for Swift.
  • CocoaMarkdown - Markdown parsing and rendering for iOS and macOS.
  • Notepad - A fully themeable markdown editor with live syntax highlighting.
  • KKStringValidator - Fast and simple string validation for iOS. With UITextField extension.
  • ISO8859 - Convert ISO8859 1-16 Encoded Text to String in Swift. Supports iOS, tvOS, watchOS and macOS.
  • Emojica - Replace standard emoji in strings with a custom emoji set, such as Twemoji or EmojiOne.
  • SwiftRichString - Elegant & Painless Attributed Strings Management Library in Swift.
  • libPhoneNumber-iOS - iOS port from libphonenumber (Google's phone number handling library).
  • AttributedTextView - Easiest way to create an attributed UITextView with support for multiple links (including hashtags and mentions).
  • StyleDecorator - Design string simply by linking attributes to needed parts.
  • Mustard - Mustard is a Swift library for tokenizing strings when splitting by whitespace doesn't cut it.
  • Input Mask - Pattern-based user input formatter, parser and validator for iOS.
  • Attributed - Modern Swift µframework for attributed strings.
  • Atributika - Easily build NSAttributedString by detecting and styling HTML-like tags, hashtags, mentions, RegExp or NSDataDetector patterns.
  • Guitar - A Cross-Platform String Library Written in Swift.
  • RealTimeCurrencyFormatter - An ObjC international currency formatting utility.
  • Down - Blazing fast Markdown rendering in Swift, built upon cmark.
  • Marky Mark - Highly customizable Markdown parsing and native rendering in Swift.
  • MarkdownView - Markdown View for iOS.
  • Highlighter - Highlight whatever you want! Highlighter will magically find UI objects such as UILabel, UITextView, UITexTfield, UIButton in your UITableViewCell or other Class.
  • Sprinter - A library for formatting strings on iOS and macOS.
  • Highlightr - An iOS & macOS syntax highlighter, supports 176 languages and comes with 79 styles.
  • fuse-swift - A lightweight fuzzy-search library, with zero dependencies.
  • EFMarkdown - A lightweight Markdown library for iOS.
  • Croc - A lightweight Swift library for Emoji parsing and querying.
  • PostalCodeValidator - A validator for postal codes with support for 200+ regions.
  • CodeMirror Swift - A lightweight wrapper of CodeMirror for macOS and iOS. Support Syntax Highlighting & Themes.
  • TwitterTextEditor - A standalone, flexible API that provides a full featured rich text editor for iOS applications.
  • AztecEditor-iOS - Aztec is a Swift library that provides a UITextView subclass with HTML visual-editing capabilities. The plugin API supports customization HTML conversion from/to HTML for compatibility with your needs.

back to top

Font

  • FontBlaster - Programmatically load custom fonts into your iOS app.
  • GoogleMaterialIconFont - Google Material Design Icons for Swift and ObjC project.
  • ios-fontawesome - NSString+FontAwesome.
  • FontAwesome.swift - Use FontAwesome in your Swift projects.
  • SwiftFontName - OS font complements library. Localized font supported.
  • SwiftIconFont - Icons fonts for iOS (FontAwesome, Iconic, Ionicon, Octicon, Themify, MapIcon, MaterialIcon).
  • FontAwesomeKit - Icon font library for iOS. Currently supports Font-Awesome, Foundation icons, Zocial, and ionicons.
  • Iconic - Auto-generated icon font library for iOS, watchOS and tvOS.
  • GoogleMaterialDesignIcons - Google Material Design Icons Font for iOS.
  • OcticonsKit - Use Octicons as UIImage / UIFont in your projects with Swifty manners.
  • IoniconsKit - Use Ionicons as UIImage / UIFont in your projects with Swifty manners.
  • FontAwesomeKit.Swift - A better choice for iOS Developer to use FontAwesome Icon.
  • UIFontComplete - Font management (System & Custom) for iOS and tvOS.
  • Swicon - Use 1600+ icons (and more!) from FontAwesome and Google Material Icons in your swift/iOS project in an easy and space-efficient way!
  • SwiftIcons - A library for using different font icons: dripicons, emoji, font awesome, icofont, ionicons, linear icons, map icons, material icons, open iconic, state, weather. It supports UIImage, UIImageView, UILabel, UIButton, UISegmentedControl, UITabBarItem, UISlider, UIBarButtonItem, UIViewController, UITextfield, UIStepper.
  • Font-Awesome-Swift - Font Awesome swift library for iOS.
  • JQSwiftIcon - Icon Fonts on iOS using string interpolation written in Swift.
  • Money - A precise, type-safe representation of a monetary amount in a given currency.

back to top

UI

  • Motif - A lightweight and customizable JSON stylesheet framework for iOS.
  • Texture - Smooth asynchronous user interfaces for iOS apps.
  • GaugeKit - Customizable gauges. Easy reproduce Apple's style gauges.
  • iCarousel - A simple, highly customisable, data-driven 3D carousel for iOS and Mac OS.
  • HorizontalDial - A horizontal scroll dial like Instagram.
  • ComponentKit - A React-Inspired View Framework for iOS, by Facebook.
  • RKNotificationHub - Make any UIView a full fledged notification center.
  • phone-number-picker - A simple and easy to use view controller enabling you to enter a phone number with a country code similar to WhatsApp written in Swift.
  • BEMCheckBox - Tasteful Checkbox for iOS.
  • MPParallaxView - Apple TV Parallax effect in Swift.
  • Splitflap - A simple split-flap display for your Swift applications.
  • EZSwipeController - UIPageViewController like Snapchat/Tinder/iOS Main Pages.
  • Curry - Curry is a framework built to enhance and compliment Foundation and UIKit.
  • Pages - UIPageViewController made simple.
  • BAFluidView - UIView that simulates a 2D view of a fluid in motion.
  • WZDraggableSwitchHeaderView - Showing status for switching between viewControllers.
  • SCTrelloNavigation - An iOS native implementation of a Trello Animated Navagation.
  • Spots - Spots is a view controller framework that makes your setup and future development blazingly fast.
  • AZExpandableIconListView - An expandable/collapsible view component written in Swift.
  • FlourishUI - A highly configurable and out-of-the-box-pretty UI library.
  • Navigation Stack - Navigation Stack is a stack-modeled navigation controller.
  • UIView-draggable - UIView category that adds dragging capabilities.
  • EPSignature - Signature component for iOS in Swift.
  • EVFaceTracker - Calculate the distance and angle of your device with regards to your face.
  • LeeGo - Declarative, configurable & highly reusable UI development as making Lego bricks.
  • MEVHorizontalContacts - An iOS UICollectionViewLayout subclass to show a list of contacts with configurable expandable menu items.
  • VisualEffectView - UIVisualEffectView subclass with tint color.
  • Cacao - Pure Swift Cross-platform UIKit (Cocoa Touch) implementation (Supports Linux).
  • JDFlipNumberView - Representing analog flip numbers like airport/trainstation displays.
  • DCKit - Set of iOS controls, which have useful IBInspectable properties. Written on Swift.
  • BackgroundVideoiOS - A swift and objective-C object that lets you add a background video to iOS views.
  • NightNight - Elegant way to integrate night mode to swift projects.
  • SwiftTheme - Powerful theme/skin manager for iOS.
  • FDStackView - Use UIStackView directly in iOS.
  • RedBeard - It's a complete framework that takes away much of the pain of getting a beautiful, powerful iOS App crafted.
  • Material - Material is an animation and graphics framework that allows developers to easily create beautiful applications.
  • DistancePicker - Custom control to select a distance with a pan gesture, written in Swift.
  • OAStackView - OAStackView tries to port back the stackview to iOS 7+. OAStackView aims at replicating all the features in UIStackView.
  • PageController - Infinite paging controller, scrolling through contents and title bar scrolls with a delay.
  • StatusProvider - Protocol to handle initial Loadings, Empty Views and Error Handling in a ViewController & views.
  • StackLayout - An alternative to UIStackView for common Auto Layout patterns.
  • NightView - Dazzling Nights on iOS.
  • SwiftVideoBackground - Easy to Use UIView subclass for implementing a video background.
  • ConfettiView - Confetti View lets you create a magnificent confetti view in your app.
  • BouncyPageViewController - Page view controller with bounce effect.
  • LTHRadioButton - A radio button with a pretty fill animation.
  • Macaw-Examples - Various usages of the Macaw library.
  • Reactions - Fully customizable Facebook reactions control.
  • Newly - Newly is a drop in solution to add Twitter/Facebook/Linkedin-style new updates/tweets/posts available button.
  • CardStackController - iOS custom controller used in Jobandtalent app to present new view controllers as cards.
  • Material Components - Google developed UI components that help developers execute Material Design.
  • FAQView - An easy to use FAQ view for iOS written in Swift.
  • LMArticleViewController - UIViewController subclass to beautifully present news articles and blog posts.
  • FSPagerView - FSPagerView is an elegant Screen Slide Library. It is extremely helpful for making Banner、Product Show、Welcome/Guide Pages、Screen/ViewController Sliders.
  • ElongationPreview - ElongationPreview is an elegant push-pop style view controller with 3D-Touch support and gestures.
  • Pageboy - A simple, highly informative page view controller.
  • IGColorPicker - A customizable color picker for iOS in Swift.
  • KPActionSheet - A replacement of default action sheet, but has very simple usage.
  • SegmentedProgressBar - Snapchat / Instagram Stories style animated indicator.
  • Magnetic - SpriteKit Floating Bubble Picker (inspired by Apple Music).
  • AmazingBubbles - Apple Music like Bubble Picker using Dynamic Animation.
  • Haptica - Easy Haptic Feedback Generator.
  • GDCheckbox - An easy to use custom checkbox/radio button component for iOS, with support of IBDesign Inspector.
  • HamsterUIKit - A simple and elegant UIKit(Chart) for iOS.
  • AZEmptyState - A UIControl subclass that makes it easy to create empty states.
  • URWeatherView - Show the weather effects onto view.
  • LCUIComponents - A framework supports creating transient views on top of other content onscreen such as popover with a data list.
  • ViewComposer - let lbl: UILabel = [.text("Hello"), .textColor(.red)] - Create views using array literal of enum expressing view attributes.
  • BatteryView - Simple battery shaped UIView.
  • ShadowView - Make shadows management easy on UIView.
  • Pulley - A library to imitate the iOS 10 Maps UI.
  • N8iveKit - A set of frameworks making iOS development more fun.
  • Panda - Create view hierarchies declaratively.
  • NotchKit - A simple way to hide the notch on the iPhone X
  • Overlay - Overlay is a flexible UI framework designed for Swift. It allows you to write CSS like Swift code.
  • SwiftyUI - High performance and lightweight(one class each UI) UIView, UIImage, UIImageView, UIlabel, UIButton, Promise and more.
  • NotchToolkit - A framework for iOS that allow developers use the iPhone X notch in creative ways.
  • PullUpController - Pull up controller with multiple sticky points like in iOS Maps.
  • DrawerKit - DrawerKit lets an UIViewController modally present another UIViewController in a manner similar to the way Apple's Maps app works.
  • Shades - Easily add drop shadows, borders, and round corners to a UIView.
  • ISPageControl - A page control similar to that used in Instagram.
  • Mixin - React.js like Mixin. More powerful Protocol-Oriented Programming.
  • Shiny - Iridescent Effect View (inspired by Apple Pay Cash).
  • StackViewController - A controller that uses a UIStackView and view controller composition to display content in a list.
  • UberSignature - Provides an iOS view controller allowing a user to draw their signature with their finger in a realistic style.
  • SwViewCapture - A nice iOS View Capture Swift Library which can capture all content.
  • HGRippleRadarView - A beautiful radar view to show nearby items (users, restaurants, ...) with ripple animation, fully customizable.
  • GDGauge - Full Customizable, Beautiful, Easy to use gauge view Edit.
  • STAControls - Handy UIControl subclasses. (Think Three20/NimbusKit of UIControls.) Written in Objective-C.
  • ApplyStyleKit - Elegant apply style, using Swift Method Chain.
  • OverlayContainer - A library to develop overlay based interfaces, such as the one presented in the iOS 12 Apple Maps or Stocks apps.
  • ClassicKit - A collection of classic-style UI components for iOS.
  • Sejima - A collection of User Interface components for iOS.
  • UI Fabric by Microsoft - UI framework based on Fluent Design System by Microsoft.
  • Popovers - A library to present popovers. Simple, modern, and highly customizable. Not boring!

back to top

Activity Indicator

  • NVActivityIndicatorView - Collection of nice loading animations.
  • RPLoadingAnimation - Loading animations by using Swift CALayer.
  • LiquidLoader - Spinner loader components with liquid animation.
  • iOS-CircleProgressView - This control will allow a user to use code instantiated or interface builder to create and render a circle progress view.
  • iOS Circle Progress Bar - iOS Circle Progress Bar.
  • LinearProgressBar - Linear Progress Bar (inspired by Google Material Design) for iOS.
  • STLoadingGroup - loading views.
  • ALThreeCircleSpinner - A pulsing spinner view written in swift.
  • MHRadialProgressView - iOS radial animated progress view.
  • Loader - Amazing animated switch activity indicator written in swift.
  • MBProgressHUD - Drop-in class for displays a translucent HUD with an indicator and/or labels while work is being done in a background thread.
  • SVProgressHUD - A clean and lightweight progress HUD for your iOS app.
  • ProgressHUD - ProgressHUD is a lightweight and easy-to-use HUD.
  • M13ProgressSuite - A suite containing many tools to display progress information on iOS.
  • PKHUD - A Swift based reimplementation of the Apple HUD (Volume, Ringer, Rotation,…) for iOS 8 and above.
  • EZLoadingActivity - Lightweight loading activity HUD.
  • FFCircularProgressView - FFCircularProgressView - An iOS 7-inspired blue circular progress view.
  • MRProgress - Collection of iOS drop-in components to visualize progress.
  • BigBrother - Automatically sets the network activity indicator for any performed request.
  • AlamofireNetworkActivityIndicator - Controls the visibility of the network activity indicator on iOS using Alamofire.
  • KDCircularProgress - A circular progress view with gradients written in Swift.
  • DACircularProgress - DACircularProgress is a UIView subclass with circular UIProgressView properties.
  • KYNavigationProgress - Simple extension of UINavigationController to display progress on the UINavigationBar.
  • GearRefreshControl - A custom animation for the UIRefreshControl.
  • NJKWebViewProgress - A progress interface library for UIWebView. You can implement progress bar for your in-app browser using this module.
  • MKRingProgressView - A beautiful ring/circular progress view similar to Activity app on Apple Watch, written in Swift.
  • Hexacon - A new way to display content in your app like the Apple Watch SpringBoard, written in Swift.
  • ParticlesLoadingView - A customizable SpriteKit particles animation on the border of a view.
  • RPCircularProgress - (Swift) Circular progress UIView subclass with UIProgressView properties.
  • MBCircularProgressBar - A circular, animatable & highly customizable progress bar, editable from the Interface Builder using IBDesignable.
  • WSProgressHUD - This is a beautiful hud view for iPhone & iPad.
  • DBMetaballLoading - A metaball loading written in Swift.
  • FillableLoaders - Completely customizable progress based loaders drawn using custom CGPaths written in Swift.
  • VHUD Simple HUD.
  • SwiftSpinner - A beautiful activity indicator and modal alert written in Swift using blur effects, translucency, flat and bold design.
  • SnapTimer - Implementation of Snapchat's stories timer.
  • LLSpinner - An easy way to create a full screen activity indicator.
  • SVUploader - A beautiful uploader progress view that makes things simple and easy.
  • YLProgressBar - UIProgressView replacement with an highly and fully customizable animated progress bar in pure Core Graphics.
  • FlexibleSteppedProgressBar - A beautiful easily customisable stepped progress bar.
  • GradientLoadingBar - An animated gradient loading bar.
  • DSGradientProgressView - A simple and customizable animated progress bar written in Swift.
  • GradientProgressBar - A gradient progress bar (UIProgressView).
  • BPCircleActivityIndicator - A lightweight and awesome Loading Activity Indicator for your iOS app.
  • DottedProgressBar - Simple and customizable animated progress bar with dots for iOS.
  • RSLoadingView - Awesome loading animations using 3D engine written with Swift.
  • SendIndicator - Yet another task indicator.
  • StepProgressView - Step-by-step progress view with labels and shapes. A good replacement for UIActivityIndicatorView and UIProgressView.
  • BPBlockActivityIndicator - A simple and awesome Loading Activity Indicator(with funny block animation) for your iOS app.
  • JDBreaksLoading - You can easily start up a little breaking game indicator by one line.
  • SkeletonView - An elegant way to show users that something is happening and also prepare them to which contents he is waiting.
  • Windless - Windless makes it easy to implement invisible layout loading view.
  • Skeleton - An easy way to create sliding CAGradientLayer animations! Works great for creating skeleton screens for loading content.
  • StatusBarOverlay - Automatically show/hide a "No Internet Connection" bar when your app loses/gains connection. It supports apps which hide the status bar and "The Notch".
  • RetroProgress - Retro looking progress bar straight from the 90s.
  • LinearProgressBar - Material Linear Progress Bar for your iOS apps.
  • MKProgress - A lightweight ProgressHUD written in Swift. Looks similar to /MBProgressHUD/SVProgressHUD/KVNProgressHUD.
  • RHPlaceholder - Simple library which give you possibility to add Facebook like loading state for your views.
  • IHProgressHUD - Simple HUD, thread safe, supports iOS, tvOS and App Extensions.
  • ActivityIndicatorView - A number of preset loading indicators created with SwiftUI.
  • ProgressIndicatorView - A number of preset progress indicators created with SwiftUI.

back to top

Animation

  • Pop - An extensible iOS and macOS animation library, useful for physics-based interactions.
  • AnimationEngine - Easily build advanced custom animations on iOS.
  • RZTransitions - A library of custom iOS View Controller Animations and Interactions.
  • DCAnimationKit - A collection of animations for iOS. Simple, just add water animations.
  • Spring - A library to simplify iOS animations in Swift.
  • Fluent - Swift animation made easy.
  • Cheetah - Easy animation library on iOS.
  • Pop By Example - A project tutorial in how to use Pop animation framework by example.
  • AppAnimations - Collection of iOS animations to inspire your next project.
  • EasyAnimation - A Swift library to take the power of UIView.animateWithDuration() to a whole new level - layers, springs, chain-able animations, and mixing view/layer animations together.
  • Animo - SpriteKit-like animation builders for CALayers.
  • CurryFire - A framework for creating unique animations.
  • IBAnimatable - Design and prototype UI, interaction, navigation, transition and animation for App Store ready Apps in Interface Builder with IBAnimatable.
  • CKWaveCollectionViewTransition - Cool wave like transition between two or more UICollectionView.
  • DaisyChain - Easy animation chaining.
  • PulsingHalo - iOS Component for creating a pulsing animation.
  • DKChainableAnimationKit - Chainable animations in Swift.
  • JDAnimationKit - Animate easy and with less code with Swift.
  • Advance - A powerful animation framework for iOS.
  • UIView-Shake - UIView category that adds shake animation.
  • Walker - A new animation engine for your app.
  • Morgan - An animation set for your app.
  • MagicMove - Keynote-style Magic Move transition animations.
  • Shimmer - An easy way to add a simple, shimmering effect to any view in an iOS app.
  • SAConfettiView - Confetti! Who doesn't like confetti?
  • CCMRadarView - CCMRadarView uses the IBDesignable tools to make an easy customizable radar view with animation.
  • Pulsator - Pulse animation for iOS.
  • Interpolate - Swift interpolation for gesture-driven animations.
  • ADPuzzleAnimation - Custom animation for UIView inspired by Fabric - Answers animation.
  • Wave - 🌊 Declarative chainable animations in Swift.
  • Stellar - A fantastic Physical animation library for swift.
  • MotionMachine - A powerful, elegant, and modular animation library for Swift.
  • JRMFloatingAnimation - An Objective-C animation library used to create floating image views.
  • AHKBendableView - UIView subclass that bends its edges when its position changes.
  • FlightAnimator - Advanced Natural Motion Animations, Simple Blocks Based Syntax.
  • ZoomTransitioning - A custom transition with image zooming animation.
  • Ubergang - A tweening engine for iOS written in Swift.
  • JHChainableAnimations - Easy to read and write chainable animations in Objective-C.
  • Popsicle - Delightful, extensible Swift value interpolation framework.
  • WXWaveView - Add a pretty water wave to your view.
  • Twinkle - Swift and easy way to make elements in your iOS and tvOS app twinkle.
  • MotionBlur - MotionBlur allows you to add motion blur effect to iOS animations.
  • RippleEffectView - RippleEffectView - A Neat Rippling View Effect.
  • SwiftyAnimate - Composable animations in Swift.
  • SamuraiTransition - Swift based library providing a collection of ViewController transitions featuring a number of neat “cutting” animations.
  • Lottie - An iOS library for a real time rendering of native vector animations from Adobe After Effects.
  • anim - An animation library for iOS with custom easings and easy to follow API.
  • AnimatedCollectionViewLayout - A UICollectionViewLayout subclass that adds custom transitions/animations to the UICollectionView.
  • Dance - A radical & elegant animation library built for iOS.
  • AKVideoImageView - UIImageView subclass which allows you to display a looped video as a background.
  • Spruce iOS Animation Library - Swift library for choreographing animations on the screen.
  • CircularRevealKit - UI framework that implements the material design's reveal effect.
  • TweenKit - Animation library for iOS in Swift.
  • Water - Simple calculation to render cheap water effects.
  • Pastel - Gradient animation effect like Instagram.
  • YapAnimator - Your fast and friendly physics-based animation system.
  • Bubble - Fruit Animation.
  • Gemini - Gemini is rich scroll based animation framework for iOS, written in Swift.
  • WaterDrops - Simple water drops animation for iOS in Swift.
  • ViewAnimator - ViewAnimator brings your UI to life with just one line.
  • Ease - Animate everything with Ease.
  • Kinieta - An Animation Engine with Custom Bezier Easing, an Intuitive API and perfect Color Intepolation.
  • LSAnimator - Easy to Read and Write Multi-chain Animations Kit in Objective-C and Swift.
  • YetAnotherAnimationLibrary - Designed for gesture-driven animations. Fast, simple, & extensible!
  • Anima - Anima is chainable Layer-Based Animation library for Swift4.
  • MotionAnimation - Lightweight animation library for UIKit.
  • AGInterfaceInteraction - library performs interaction with UI interface.
  • PMTween - An elegant and flexible tweening library for iOS.
  • VariousViewsEffects - Animates views nicely with easy to use extensions.
  • TheAnimation - Type-safe CAAnimation wrapper. It makes preventing to set wrong type values.
  • Poi - Poi makes you use card UI like tinder UI .You can use it like tableview method.
  • Sica - Simple Interface Core Animation. Run type-safe animation sequencially or parallelly.
  • fireworks - Fireworks effect for UIView
  • Disintegrate - Disintegration animation inspired by THAT thing Thanos did at the end of Avengers: Infinity War.
  • Wobbly - Wobbly is a Library of predefined, easy to use iOS animations.
  • LoadingShimmer - An easy way to add a shimmering effect to any view with just one line of code. It is useful as an unobtrusive loading indicator.
  • SPPerspective - Widgets iOS 14 animation with 3D and dynamic shadow. Customisable transform and duration.

back to top

Transition

  • BlurryModalSegue - A custom modal segue for providing a blurred overlay effect.
  • DAExpandAnimation - A custom modal transition that presents a controller with an expanding effect while sliding out the presenter remnants.
  • BubbleTransition - A custom modal transition that presents and dismiss a controller with an expanding bubble effect.
  • RPModalGestureTransition - You can dismiss modal by using gesture.
  • RMPZoomTransitionAnimator - A custom zooming transition animation for UIViewController.
  • ElasticTransition - A UIKit custom transition that simulates an elastic drag. Written in Swift.
  • ElasticTransition-ObjC - A UIKit custom transition that simulates an elastic drag.This is the Objective-C Version of Elastic Transition written in Swift by lkzhao.
  • ZFDragableModalTransition - Custom animation transition for present modal view controller.
  • ZOZolaZoomTransition - Zoom transition that animates the entire view hierarchy. Used extensively in the Zola iOS application.
  • JTMaterialTransition - An iOS transition for controllers based on material design.
  • AnimatedTransitionGallery - Collection of iOS 7 custom animated transitions using UIViewControllerAnimatedTransitioning protocol.
  • TransitionTreasury - Easier way to push your viewController.
  • Presenter - Screen transition with safe and clean code.
  • Kaeru - Switch viewcontroller like iOS task manager.
  • View2ViewTransition - Custom interactive view controller transition from one view to another view.
  • AZTransitions - API to make great custom transitions in one method.
  • Hero - Elegant transition library for iOS & tvOS.
  • Motion - Seamless animations and transitions in Swift.
  • PresenterKit - Swifty view controller presentation for iOS.
  • Transition - Easy interactive interruptible custom ViewController transitions.
  • Gagat - A delightful way to transition between visual styles in your iOS applications.
  • DeckTransition - A library to recreate the iOS Apple Music now playing transition.
  • TransitionableTab - TransitionableTab makes it easy to animate when switching between tab.
  • AlertTransition - AlertTransition is a extensible library for making view controller transitions, especially for alert transitions.
  • SemiModalViewController - Present view / view controller as bottom-half modal.
  • ImageTransition - ImageTransition is a library for smooth animation of images during transitions.
  • LiquidTransition - removes boilerplate code to perform transition, allows backward animations, custom properties animation and much more!
  • SPStorkController - Very similar to the controllers displayed in Apple Music, Podcasts and Mail Apple's applications.
  • AppstoreTransition - Simulates the appstore card animation transition.
  • DropdownTransition - Simple and elegant Dropdown Transition for presenting controllers from top to bottom.
  • NavigationTransitions - Pure SwiftUI Navigation transitions.
  • LiquidSwipe - Liquid navigation animation
  • TBIconTransitionKit - Easy to use icon transition kit that allows to smoothly change from one shape to another.

back to top

Alert & Action Sheet

  • SweetAlert - Live animated Alert View for iOS written in Swift.
  • NYAlertViewController - Highly configurable iOS Alert Views with custom content views.
  • SCLAlertView-Swift - Beautiful animated Alert View, written in Swift.
  • TTGSnackbar - Show simple message and action button on the bottom of the screen with multi kinds of animation.
  • Swift-Prompts - A Swift library to design custom prompts with a great scope of options to choose from.
  • BRYXBanner - A lightweight dropdown notification for iOS 7+, in Swift.
  • LNRSimpleNotifications - Simple Swift in-app notifications. LNRSimpleNotifications is a simplified Swift port of TSMessages.
  • HDNotificationView - Emulates the native Notification Banner UI for any alert.
  • JDStatusBarNotification - Easy, customizable notifications displayed on top of the statusbar.
  • Notie - In-app notification in Swift, with customizable buttons and input text field.
  • EZAlertController - Easy Swift UIAlertController.
  • GSMessages - A simple style messages/notifications for iOS 7+.
  • OEANotification - In-app customizable notification views on top of screen for iOS which is written in Swift 2.1.
  • RKDropdownAlert - Extremely simple UIAlertView alternative.
  • TKSwarmAlert - Animated alert library like Swarm app.
  • SimpleAlert - Customizable simple Alert and simple ActionSheet for Swift.
  • Hokusai - A Swift library to provide a bouncy action sheet.
  • SwiftNotice - SwiftNotice is a GUI library for displaying various popups (HUD) written in pure Swift, fits any scrollview.
  • SwiftOverlays - SwiftOverlays is a Swift GUI library for displaying various popups and notifications.
  • SwiftyDrop - SwiftyDrop is a lightweight pure Swift simple and beautiful dropdown message.
  • LKAlertController - An easy to use UIAlertController builder for swift.
  • DOAlertController - Simple Alert View written in Swift, which can be used as a UIAlertController. (AlertController/AlertView/ActionSheet).
  • CustomizableActionSheet - Action sheet allows including your custom views and buttons.
  • Toast-Swift - A Swift extension that adds toast notifications to the UIView object class.
  • PMAlertController - PMAlertController is a great and customizable substitute to UIAlertController.
  • PopupViewController - UIAlertController drop in replacement with much more customization.
  • AlertViewLoveNotification - A simple and attractive AlertView to ask permission to your users for Push Notification.
  • CRToast - A modern iOS toast view that can fit your notification needs.
  • JLToast - Toast for iOS with very simple interface.
  • CuckooAlert - Multiple use of presentViewController for UIAlertController.
  • KRAlertController - A colored alert view for your iOS.
  • Dodo - A message bar for iOS written in Swift.
  • MaterialActionSheetController - A Google like action sheet for iOS written in Swift.
  • SwiftMessages - A very flexible message bar for iOS written in Swift.
  • FCAlertView - A Flat Customizable AlertView for iOS. (Swift).
  • FCAlertView - A Flat Customizable AlertView for iOS. (Objective-C).
  • CDAlertView - Highly customizable alert/notification/success/error/alarm popup.
  • RMActionController - Present any UIView in an UIAlertController like manner.
  • RMDateSelectionViewController - Select a date using UIDatePicker in a UIAlertController like fashion.
  • RMPickerViewController - Select something using UIPickerView in a UIAlertController like fashion.
  • Jelly - Jelly provides custom view controller transitions with just a few lines of code.
  • Malert - Malert is a simple, easy and custom iOS UIAlertView written in Swift.
  • RAlertView - AlertView, iOS popup window, A pop-up framework, Can be simple and convenient to join your project.
  • NoticeBar - A simple NoticeBar written by Swift 3, similar with QQ notice view.
  • LIHAlert - Advance animated banner alerts for iOS.
  • BPStatusBarAlert - A simple alerts that appear on the status bar and below navigation bar(like Facebook).
  • CFAlertViewController - A library that helps you display and customise alerts and action sheets on iPad and iPhone.
  • NotificationBanner - The easiest way to display highly customizable in app notification banners in iOS.
  • Alertift - Swifty, modern UIAlertController wrapper.
  • PCLBlurEffectAlert - Swift AlertController with UIVisualEffectView.
  • JDropDownAlert - Multi dirction dropdown alert view.
  • BulletinBoard - Generate and Display Bottom Card Interfaces on iOS
  • CFNotify - A customizable framework to create draggable views.
  • StatusAlert - Display Apple system-like self-hiding status alerts without interrupting user flow.
  • Alerts & Pickers - Advanced usage of native UIAlertController with TextField, DatePicker, PickerView, TableView and CollectionView.
  • RMessage - A crisp in-app notification/message banner built in ObjC.
  • InAppNotify - Swift library to manage in-app notification in swift language, like WhatsApp, Telegram, Frind, etc.
  • FloatingActionSheetController - FloatingActionSheetController is a cool design ActionSheetController library written in Swift.
  • TOActionSheet - A custom-designed reimplementation of the UIActionSheet control for iOS
  • XLActionController - Fully customizable and extensible action sheet controller written in Swift.
  • PopMenu - A cool and customizable popup style action sheet 😎
  • NotchyAlert - Use the iPhone X notch space to display creative alerts.
  • Sheet - SHEET helps you easily create a wide variety of action sheets with navigation features used in the Flipboard App
  • ALRT - An easier constructor for UIAlertController. Present an alert from anywhere.
  • CatAlertController - Use UIAlertController like a boss.
  • Loaf - A simple framework for easy iOS Toasts.
  • SPAlert - Native popup from Apple Music & Feedback in AppStore. Contains Done & Heart presets.
  • CleanyModal - Use nice customized alerts and action sheets with ease, API is similar to native UIAlertController.
  • BottomSheet - Powerful Bottom Sheet component with content based size, interactive dismissal and navigation controller support.
  • LCActionSheet - A simple ActionSheet. WeChat, Weibo and QQ all use similar styles. Fully support Swift.

back to top

Badge

  • MIBadgeButton - Notification badge for UIButtons.
  • EasyNotificationBadge - UIView extension that adds a notification badge. [e]
  • swift-badge - Badge view for iOS written in swift
  • BadgeHub - Make any UIView a full fledged animated notification center. It is a way to quickly add a notification badge icon to a UIView.

back to top

Button

  • SSBouncyButton - iOS7-style bouncy button UI component.
  • DOFavoriteButton - Cute Animated Button written in Swift.
  • VBFPopFlatButton - Flat button with 9 different states animated using Facebook POP.
  • HTPressableButton - Flat design pressable button.
  • LiquidFloatingActionButton - Material Design Floating Action Button in liquid state
  • JTFadingInfoView - An UIButton-based view with fade in/out animation features.
  • Floaty - ❤️ Floating Action Button for iOS
  • TVButton - Recreating the cool parallax icons from Apple TV as iOS UIButtons (in Swift).
  • SwiftyButton - Simple and customizable button in Swift
  • AnimatablePlayButton - Animated Play and Pause Button using CALayer, CAKeyframeAnimation.
  • gbkui-button-progress-view - Inspired by Apple’s download progress buttons in the App Store.
  • ZFRippleButton - Custom UIButton effect inspired by Google Material Design
  • JOEmojiableBtn - Emoji selector like Facebook Reactions.
  • EMEmojiableBtn - Option selector that works similar to Reactions by fb. Objective-c version.
  • WYMaterialButton - Interactive and fully animated Material Design button for iOS developers.
  • DynamicButton - Yet another animated flat buttons in Swift
  • OnOffButton - Custom On/Off Animated UIButton, written in Swift. By Creativedash
  • WCLShineButton - This is a UI lib for iOS. Effects like shining.
  • EasySocialButton - An easy way to create beautiful social authentication buttons.
  • NFDownloadButton - Revamped Download Button.
  • LGButton - A fully customisable subclass of the native UIControl which allows you to create beautiful buttons without writing any line of code.
  • MultiToggleButton - A UIButton subclass that implements tap-to-toggle button text (Like the camera flash and timer buttons).
  • PMSuperButton - A powerful UIButton with super powers, customizable from Storyboard!
  • JSButton - A fully customisable swift subclass on UIButton which allows you to create beautiful buttons without writing any line of code.
  • TransitionButton - UIButton sublass for loading and transition animation
  • ButtonProgressBar-iOS - A small and flexible UIButton subclass with animated loading progress, and completion animation.
  • SpicyButton - Full-featured IBDesignable UIButton class
  • DesignableButton - UIButton subclass with centralised and reusable styles. View styles and customise in InterfaceBuilder in real time!
  • BEMCheckBox - Tasteful Checkbox for iOS. (Check box)
  • ExpandableButton - Customizable and easy to use expandable button in Swift.
  • TORoundedButton - A high-performance button control with rounded corners.
  • FloatingButton - Easily customizable floating button menu created with SwiftUI.

back to top

Calendar

  • CVCalendar - A custom visual calendar for iOS 8+ written in Swift (2.0).
  • RSDayFlow - iOS 7+ Calendar with Infinite Scrolling.
  • NWCalendarView - An availability calendar implementation for iOS
  • GLCalendarView - A fully customizable calendar view acting as a date range picker
  • JTCalendar - A customizable calendar view for iOS.
  • JTAppleCalendar - The Unofficial Swift Apple Calendar Library. View. Control. for iOS & tvOS
  • Daysquare - An elegant calendar control for iOS.
  • ASCalendar - A calendar control for iOS written in swift with mvvm pattern
  • Calendar - A set of views and controllers for displaying and scheduling events on iOS
  • Koyomi - Simple customizable calendar component in Swift
  • DateTimePicker - A nicer iOS UI component for picking date and time
  • RCalendarPicker - RCalendarPicker A date picker control.
  • CalendarKit - Fully customizable calendar day view.
  • GDPersianCalendar - Customizable and easy to use Persian Calendar component.
  • MBCalendarKit - A calendar framework for iOS built with customization, and localization in mind.
  • PTEventView - An Event View based on Apple's Event Detail View within Calender.Supports ARC, Autolayout and editing via StoryBoard.
  • KDCalendarView - A calendar component for iOS written in Swift 4.0. It features both vertical and horizontal layout (and scrolling) and the display of native calendar events.
  • CalendarPopUp - CalendarPopUp - JTAppleCalendar library.
  • ios_calendar - It's lightweight and simple control with supporting Locale and CalendarIdentifier. There're samples for iPhone and iPad, and also with using a popover. With supporting Persian calendar
  • FSCalendar - A fully customizable iOS calendar library, compatible with Objective-C and Swift.
  • ElegantCalendar - The elegant full-screen calendar missed in SwiftUI.

back to top

Cards

Card based UI's, pan gestures, flip and swipe animations

  • MDCSwipeToChoose - Swipe to "like" or "dislike" any view, just like Tinder.app. Build a flashcard app, a photo viewer, and more, in minutes, not hours!
  • TisprCardStack - Library that allows to have cards UI.
  • CardAnimation - Card flip animation by pan gesture.
  • Koloda - KolodaView is a class designed to simplify the implementation of Tinder like cards on iOS.
  • KVCardSelectionVC - Awesome looking Dial like card selection ViewController.
  • DMSwipeCards - Tinder like card stack that supports lazy loading and generics
  • TimelineCards - Presenting timelines as cards, single or bundled in scrollable feed!.
  • Cards - Awesome iOS 11 AppStore's Card Views.
  • MMCardView - Custom CollectionView like Wallet App
  • CardsLayout - Nice card-designed custom collection view layout.
  • CardParts - A reactive, card-based UI framework built on UIKit.
  • VerticalCardSwiper - A marriage between the Shazam Discover UI and Tinder, built with UICollectionView in Swift.
  • Shuffle - A multi-directional card swiping library inspired by Tinder.

back to top

Form & Settings

Input validators, form helpers and form builders.

  • Form - The most flexible and powerful way to build a form on iOS
  • XLForm - XLForm is the most flexible and powerful iOS library to create dynamic table-view forms. Fully compatible with Swift & Obj-C.
  • Eureka - Elegant iOS form builder in Swift.
  • YALField - Custom Field component with validation for creating easier form-like UI from interface builder.
  • Former - Former is a fully customizable Swift2 library for easy creating UITableView based form.
  • SwiftForms - A small and lightweight library written in Swift that allows you to easily create forms.
  • Formalist - Declarative form building framework for iOS
  • SwiftyFORM - SwiftyFORM is a form framework for iOS written in Swift
  • SwiftValidator - A rule-based validation library for Swift
  • GenericPasswordRow - A row for Eureka to implement password validations.
  • formvalidator-swift - A framework to validate inputs of text fields and text views in a convenient way.
  • ValidationToolkit - Lightweight framework for input validation written in Swift.
  • ATGValidator - Rule based validation framework with form and card validation support for iOS.
  • ValidatedPropertyKit - Easily validate your Properties with Property Wrappers.
  • FDTextFieldTableViewCell - Adds a UITextField to the cell and places it correctly.

back to top

Keyboard

  • RSKKeyboardAnimationObserver - Showing / dismissing keyboard animation in simple UIViewController category.
  • RFKeyboardToolbar - This is a flexible UIView and UIButton subclass to add customized buttons and toolbars to your UITextFields/UITextViews.
  • IQKeyboardManager - Codeless drop-in universal library allows to prevent issues of keyboard sliding up and cover UITextField/UITextView.
  • NgKeyboardTracker - Objective-C library for tracking keyboard in iOS apps.
  • MMNumberKeyboard - A simple keyboard to use with numbers and, optionally, a decimal point.
  • KeyboardObserver - For less complicated keyboard event handling.
  • TPKeyboardAvoiding - A drop-in universal solution for moving text fields out of the way of the keyboard in iOS
  • YYKeyboardManager - iOS utility class allows you to access keyboard view and track keyboard animation.
  • KeyboardMan - KeyboardMan helps you make keyboard animation.
  • MakemojiSDK - Emoji Keyboard SDK (iOS)
  • Typist - Small, drop-in Swift UIKit keyboard manager for iOS apps-helps manage keyboard's screen presence and behavior without notification center.
  • KeyboardHideManager - Codeless manager to hide keyboard by tapping on views for iOS written in Swift
  • Toolbar - Awesome autolayout Toolbar.
  • IHKeyboardAvoiding - A drop-in universal solution for keeping any UIView visible when the keyboard is being shown - no more UIScrollViews!
  • NumPad - Number Pad (inspired by Square's design).
  • Ribbon - A simple cross-platform toolbar/custom input accessory view library for iOS & macOS.
  • ISEmojiView - Emoji Keyboard for iOS

back to top

Label

  • LTMorphingLabel - Graceful morphing effects for UILabel written in Swift.
  • ActiveLabel.swift - UILabel drop-in replacement supporting Hashtags (#), Mentions (@) and URLs (http://) written in Swift
  • MZTimerLabel - A handy class for iOS to use UILabel as a countdown timer or stopwatch just like in Apple Clock App.
  • CountdownLabel - Simple countdown UILabel with morphing animation, and some useful function.
  • IncrementableLabel - Incrementable label for iOS, macOS, and tvOS.
  • TTTAttributedLabel - A drop-in replacement for UILabel that supports attributes, data detectors, links, and more
  • NumberMorphView - A label view for displaying numbers which can transition or animate using a technique called number tweening or number morphing.
  • GlitchLabel - Glitching UILabel for iOS.
  • TOMSMorphingLabel - Configurable morphing transitions between text values of a label.
  • THLabel - UILabel subclass, which additionally allows shadow blur, inner shadow, stroke text and fill gradient.
  • RQShineLabel - Secret app like text animation
  • ZCAnimatedLabel - UILabel replacement with fine-grain appear/disappear animation
  • TriLabelView - A triangle shaped corner label view for iOS written in Swift.
  • Preloader.Ophiuchus - Custom Label to apply animations on whole text or letters.
  • MTLLinkLabel - MTLLinkLabel is linkable UILabel. Written in Swift.
  • UICountingLabel - Adds animated counting support to UILabel.
  • SlidingText - Swift UIView for sliding text with page indicator.
  • NumericAnimatedLabel - Swift UIView for showing numeric label with incremental and decremental step animation while changing value. Useful for scenarios like displaying currency.
  • JSLabel - A simple designable subclass on UILabel with extra IBDesignable and Blinking features.
  • AnimatedMaskLabel - Animated Mask Label is a nice gradient animated label. This is an easy way to add a shimmering effect to any view in your app.
  • STULabel - A label view that's faster than UILabel and supports asynchronous rendering, links with UIDragInteraction, very flexible text truncation, Auto Layout, UIAccessibility and more.

back to top

Login

  • LFLoginController - Customizable login screen, written in Swift.
  • LoginKit - LoginKit is a quick and easy way to add a Login/Signup UX to your iOS app.
  • Cely - Plug-n-Play login framework written in Swift.

back to top

Menu

  • ENSwiftSideMenu - A simple side menu for iOS 7/8 written in Swift.
  • RESideMenu - iOS 7/8 style side menu with parallax effect inspired by Dribbble shots.
  • SSASideMenu - A Swift implementation of RESideMenu. A iOS 7/8 style side menu with parallax effect.
  • RadialMenu - RadialMenu is a custom control for providing a touch context menu (like iMessage recording in iOS 8) built with Swift & POP
  • cariocamenu - The fastest zero-tap iOS menu.
  • VLDContextSheet - Context menu similar to the one in the Pinterest iOS app
  • GuillotineMenu - Our Guillotine Menu Transitioning Animation implemented in Swift reminds a bit of a notorious killing machine.
  • MediumMenu - A menu based on Medium iOS app.
  • SwiftySideMenu - SwiftySideMenu is a lightweight and easy to use side menu controller to add left menu and center view controllers with scale animation based on Pop framework.
  • LLSlideMenu - This is a spring slide menu for iOS apps
  • Swift-Slide-Menu - A Slide Menu, written in Swift, inspired by Slide Menu Material Design.
  • MenuItemKit - UIMenuItem with image and block(closure)
  • BTNavigationDropdownMenu - The elegant dropdown menu, written in Swift, appears underneath navigation bar to display a list of related items when a user click on the navigation title.
  • ALRadialMenu - A radial/circular menu featuring spring animations. Written in swift
  • AZDropdownMenu - An easy to use dropdown menu that supports images.
  • CircleMenu - An animated, multi-option menu button.
  • SlideMenuControllerSwift - iOS Slide Menu View based on Google+, iQON, Feedly, Ameba iOS app. It is written in pure Swift.
  • SideMenu - Simple side menu control in Swift inspired by Facebook. Right and Left sides. Lots of customization and animation options. Can be implemented in Storyboard with no code.
  • CategorySliderView - slider view for choosing categories. add any UIView type as category item view. Fully customisable
  • MKDropdownMenu - A Dropdown Menu for iOS with many customizable parameters to suit any needs.
  • ExpandingMenu - ExpandingMenu is menu button for iOS written in Swift.
  • PageMenu - A paging menu controller built from other view controllers placed inside a scroll view (like Spotify, Windows Phone, Instagram)
  • XXXRoundMenuButton - A simple circle style menu.
  • IGCMenu - Grid and Circular menu with animation.Easy to customise.
  • EEJSelectMenu - Single selection menu with cool animations, responsive with all screen sizes.
  • IGLDropDownMenu - An iOS drop down menu with pretty animation and easy to customize.
  • Side-Menu.iOS - Animated side menu with customizable UI
  • PopMenu - PopMenu is pop animation menu inspired by Sina weibo / NetEase app.
  • FlowingMenu - Interactive view transition to display menus with flowing and bouncing effects in Swift
  • Persei - Animated top menu for UITableView / UICollectionView / UIScrollView written in Swift
  • DropDown - A Material Design drop down for iOS
  • KYGooeyMenu - A not bad gooey effects menu.
  • SideMenuController - A side menu controller written in Swift
  • Context-Menu.iOS - You can easily add awesome animated context menu to your app.
  • ViewDeck - An implementation of the sliding functionality found in the Path 2.0 or Facebook iOS apps.
  • FrostedSidebar - Hamburger Menu using Swift and iOS 8 API's
  • VHBoomMenuButton - A menu which can ... BOOM!
  • DropDownMenuKit - A simple, modular and highly customizable UIKit menu, that can be attached to the navigation bar or toolbar, written in Swift.
  • RevealMenuController - Expandable item groups, custom position and appearance animation. Similar to ActionSheet style.
  • RHSideButtons - Library provides easy to implement variation of Android (Material Design) Floating Action Button for iOS. You can use it as your app small side menu.
  • Swift-CircleMenu - Rotating circle menu written in Swift 3.
  • AKSideMenu - Beautiful iOS side menu library with parallax effect.
  • InteractiveSideMenu - Customizable iOS Interactive Side Menu written in Swift 3.
  • YNDropDownMenu - Adorable iOS drop down menu with Swift3.
  • KWDrawerController - Drawer view controller that easy to use!
  • JNDropDownMenu - Easy to use tableview style drop down menu with multi-column support written in Swift3.
  • FanMenu - Menu with a circular layout based on Macaw.
  • AirBar - UIScrollView driven expandable menu written in Swift 3.
  • FAPanels - FAPanels for transition
  • SwipeMenuViewController - Swipable tab and menu View and ViewController.
  • DTPagerController - A fully customizable container view controller to display set of ViewControllers in horizontal scroller
  • PagingKit - PagingKit provides customizable menu UI It has more flexible layout and design than the other libraries.
  • Dropdowns - 💧 Dropdown in Swift
  • Parchment - A paging view controller with a highly customizable menu. Built on UICollectionView, with support for custom layouts and infinite data sources.
  • ContextMenu - An iOS context menu UI inspired by Things 3.
  • Panels - Panels is a framework to easily add sliding panels to your application.
  • UIMenuScroll - Creating the horizontal swiping navigation how on Facebook Messenger.
  • CircleBar - 🔶 A fun, easy-to-use tab bar navigation controller for iOS.
  • SPLarkController - Settings screen with buttons and switches.
  • SwiftyMenu - A Simple and Elegant DropDown menu for iOS 🔥💥

back to top

Navigation Bar

  • HidingNavigationBar - Easily hide and show a view controller's navigation bar (and tab bar) as a user scrolls
  • KMNavigationBarTransition - A drop-in universal library helps you to manage the navigation bar styles and makes transition animations smooth between different navigation bar styles while pushing or popping a view controller for all orientations.
  • LTNavigationBar - UINavigationBar Category which allows you to change its appearance dynamically
  • BusyNavigationBar - A UINavigationBar extension to show loading effects
  • KDInteractiveNavigationController - A UINavigationController subclass that support pop interactive UINavigationbar with hidden or show.
  • AMScrollingNavbar - Scrollable UINavigationBar that follows the scrolling of a UIScrollView
  • NavKit - Simple and integrated way to customize navigation bar experience on iOS app.
  • RainbowNavigation - An easy way to change backgroundColor of UINavigationBar when Push & Pop
  • TONavigationBar - A simple subclass that adds the ability to set the navigation bar background to 'clear' and gradually transition it visibly back in, similar to the effect in the iOS Music app.

back to top

PickerView

  • ActionSheetPicker-3.0 - Quickly reproduce the dropdown UIPickerView / ActionSheet functionality on iOS.
  • PickerView - A customizable alternative to UIPickerView in Swift.
  • DatePickerDialog - Date picker dialog for iOS
  • CZPicker - A picker view shown as a popup for iOS.
  • AIDatePickerController - 📅 UIDatePicker modally presented with iOS 7 custom transitions.
  • CountryPicker - 📅 UIPickerView with Country names flags and phoneCodes
  • McPicker - A customizable, closure driven UIPickerView drop-in solution with animations that is rotation ready.
  • Mandoline - An iOS picker view to serve all your "picking" needs
  • D2PDatePicker - Elegant and Easy-to-Use iOS Swift Date Picker
  • CountryPickerView- A simple, customizable view for efficiently collecting country information in iOS apps
  • planet - A country picker
  • MICountryPicker - Swift country picker with search option.
  • ADDatePicker - A fully customizable iOS Horizontal PickerView library, written in pure swift.
  • SKCountryPicker - A simple, customizable Country picker for picking country or dialing code.

back to top

Popup

  • MMPopupView - Pop-up based view(e.g. alert sheet), can easily customize.
  • STPopup - STPopup provides a UINavigationController in popup style, for both iPhone and iPad.
  • NMPopUpView - Simple iOS class for showing nice popup windows. Swift and Objective-C versions available.
  • PopupController - A customizable controller for showing temporary popup view.
  • SubscriptionPrompt - Subscription View Controller like the Tinder uses
  • Presentr - Wrapper for custom ViewController presentations in iOS 8+
  • PopupDialog - A simple, customizable popup dialog for iOS written in Swift. Replaces UIAlertControllers alert style.
  • SelectionDialog - Simple selection dialog.
  • AZDialogViewController - A highly customizable alert dialog controller that mimics Snapchat's alert dialog.
  • MIBlurPopup - MIBlurPopup let you create amazing popups with a blurred background.
  • LNPopupController - a framework for presenting view controllers as popups of other view controllers, much like the Apple Music and Podcasts apps.
  • PopupWindow - PopupWindow is a simple Popup using another UIWindow in Swift.
  • SHPopup - SHPopup is a simple lightweight library for popup view.
  • Popover - Popover is a balloon library like Facebook app. It is written in pure swift.
  • SwiftEntryKit - A highly customizable popups, alerts and banners presenter for iOS. It offers various presets and is written in pure Swift.
  • FFPopup - ⛩FFPopup is a lightweight library for presenting custom views as a popup.
  • PopupView - Toasts and popups library written with SwiftUI.
  • MijickPopupView - Popups presentation made simple with SwiftUI.

back to top

ProgressView

back to top

Pull to Refresh

  • DGElasticPullToRefresh - Elastic pull to refresh for iOS developed in Swift
  • PullToBounce - Animated "Pull To Refresh" Library for UIScrollView.
  • SVPullToRefresh - Give pull-to-refresh & infinite scrolling to any UIScrollView with 1 line of code. http://samvermette.com/314
  • UzysAnimatedGifPullToRefresh - Add PullToRefresh using animated GIF to any scrollView with just simple code
  • PullToRefreshCoreText - PullToRefresh extension for all UIScrollView type classes with animated text drawing style
  • BOZPongRefreshControl - A pull-down-to-refresh control for iOS that plays pong, originally created for the MHacks III iOS app
  • CBStoreHouseRefreshControl - Fully customizable pull-to-refresh control inspired by Storehouse iOS app
  • SurfingRefreshControl - Inspired by CBStoreHouseRefreshControl.Customizable pull-to-refresh control,written in pure Swift
  • mntpulltoreact - One gesture, many actions. An evolution of Pull to Refresh.
  • ADChromePullToRefresh - Chrome iOS app style pull to refresh with multiple actions.
  • BreakOutToRefresh - A playable pull to refresh view using SpriteKit.
  • MJRefresh An easy way to use pull-to-refresh.
  • HTPullToRefresh - Easily add vertical and horizontal pull to refresh to any UIScrollView. Can also add multiple pull-to-refesh views at once.
  • PullToRefreshSwift - iOS Simple Cool PullToRefresh Library. It is written in pure swift.
  • GIFRefreshControl - GIFRefreshControl is a pull to refresh that supports GIF images as track animations.
  • ReplaceAnimation - Pull-to-refresh animation in UICollectionView with a sticky header flow layout, written in Swift
  • PullToMakeSoup - Custom animated pull-to-refresh that can be easily added to UIScrollView
  • RainyRefreshControl - Simple refresh control for iOS inspired by concept.
  • ESPullToRefresh - Customisable pull-to-refresh, including nice animation on the top
  • CRRefresh - An easy way to use pull-to-refresh.
  • KafkaRefresh - Animated, customizable, and flexible pull-to-refresh framework for faster and easier iOS development.

back to top

Rating Stars

  • FloatRatingView - Whole, half or floating point ratings control written in Swift
  • TTGEmojiRate - An emoji-liked rating view for iOS, implemented in Swift.
  • StarryStars - StarryStars is iOS GUI library for displaying and editing ratings
  • Cosmos - A star rating control for iOS / Swift
  • HCSStarRatingView - Simple star rating view for iOS written in Objective-C
  • MBRateApp - A groovy app rate stars screen for iOS written in Swift
  • RPInteraction - Review page interaction - handy and pretty way to ask for review.

back to top

ScrollView

  • ScrollingFollowView - ScrollingFollowView is a simple view which follows UIScrollView scrolling.
  • UIScrollView-InfiniteScroll - UIScrollView infinite scroll category.
  • GoAutoSlideView - GoAutoSlideView extends UIScrollView by featuring infinitely and automatically slide.
  • AppStoreStyleHorizontalScrollView - App store style horizontal scroll view.
  • PullToDismiss - You can dismiss modal viewcontroller by pulling scrollview or navigationbar in Swift.
  • SpreadsheetView - Full configurable spreadsheet view user interfaces for iOS applications. With this framework, you can easily create complex layouts like schedule, Gantt chart or timetable as if you are using Excel.
  • VegaScroll - VegaScroll is a lightweight animation flowlayout for UICollectionView completely written in Swift 4, compatible with iOS 11 and Xcode 9
  • ShelfView-iOS - iOS custom view to display books on shelf
  • SlideController - SlideController is simple and flexible UI component completely written in Swift. It is a nice alternative for UIPageViewController built using power of generic types.
  • CrownControl - Inspired by the Apple Watch Digital Crown, CrownControl is a tiny accessory view that enables scrolling through scrollable content without lifting your thumb.
  • SegementSlide - Multi-tier UIScrollView nested scrolling solution.

back to top

Segmented Control

back to top

Slider

  • VolumeControl - Custom volume control for iPhone featuring a well-designed round slider.
  • WESlider - Simple and light weight slider with chapter management
  • IntervalSlider - IntervalSlider is a slider library like ReutersTV app. written in pure swift.
  • RangeSlider - A simple range slider made in Swift
  • CircleSlider - CircleSlider is a Circular slider library. written in pure Swift.
  • MARKRangeSlider - A custom reusable slider control with 2 thumbs (range slider).
  • ASValueTrackingSlider - A UISlider subclass that displays the slider value in a popup view
  • TTRangeSlider - A slider, similar in style to UISlider, but which allows you to pick a minimum and maximum range.
  • MMSegmentSlider - Customizable animated slider for iOS.
  • StepSlider - StepSlider its custom implementation of slider such as UISlider for preset integer values.
  • JDSlider - An iOS Slider written in Swift.
  • SnappingSlider - A beautiful slider control for iOS built purely upon Swift
  • MTCircularSlider - A feature-rich circular slider control.
  • VerticalSlider - VerticalSlider is a vertical implementation of the UISlider slider control.
  • CircularSlider - A powerful Circular Slider. It's written in Swift, it's 100% IBDesignable and all parameters are IBInspectable.
  • HGCircularSlider - A custom reusable circular slider control for iOS application.
  • RangeSeekSlider - A customizable range slider for iOS.
  • SectionedSlider - Control Center Slider.
  • MultiSlider - UISlider clone with multiple thumbs and values, optional snap intervals, optional value labels.
  • AGCircularPicker - AGCircularPicker is helpful component for creating a controller aimed to manage any calculated parameter.
  • Fluid Slider - A slider widget with a popup bubble displaying the precise value selected.

back to top

Splash View

  • CBZSplashView - Twitter style Splash Screen View. Grows to reveal the Initial view behind.
  • SKSplashView - Create custom animated splash views similar to the ones in the Twitter, Uber and Ping iOS app.
  • RevealingSplashView - A Splash view that animates and reveals its content, inspired by Twitter splash

back to top

Status Bar

  • Bartinter - Status bar tint depending on content behind, updates dynamically.

back to top

Stepper

  • PFStepper - May be the most elegant stepper you have ever had!
  • ValueStepper - A Stepper object that displays its value.
  • GMStepper - A stepper with a sliding label in the middle.
  • barceloneta - The right way to increment/decrement values with a simple gesture on iOS.
  • SnappingStepper - An elegant alternative to the UIStepper written in Swift
  • SMNumberWheel - A custom control written in Swift, which is ideal for picking numbers very fast but yet very accurate using a rotating wheel

back to top

Switch

  • AnimatedSwitch - UISwitch which paints over the parent view with the color in Swift.
  • ViralSwitch - A UISwitch that infects its superview with its tint color.
  • JTMaterialSwitch - A customizable switch UI with ripple effect and bounce animations, inspired from Google's Material Design.
  • TKSwitcherCollection - An animate switch collection
  • SevenSwitch - iOS7 style drop in replacement for UISwitch.
  • PMZSwitch - Yet another animated toggle
  • Switcher - Swift - Custom UISwitcher with animation when change status
  • RAMPaperSwitch - RAMPaperSwitch is a Swift module which paints over the parent view when the switch is turned on.
  • AIFlatSwitch - A flat component alternative to UISwitch on iOS
  • Switch - An iOS switch control implemented in Swift with full Interface Builder support.

back to top

Tab Bar

  • ESTabBarController - A tab bar controller for iOS that allows highlighting buttons and setting custom actions to them.
  • GooeyTabbar - A gooey effect tabbar
  • animated-tab-bar - RAMAnimatedTabBarController is a Swift module for adding animation to tabbar items.
  • FoldingTabBar.iOS - Folding Tab Bar and Tab Bar Controller
  • GGTabBar - Another UITabBar & UITabBarController (iOS Tab Bar) replacement, but uses Auto Layout for arranging it's views hierarchy.
  • adaptive-tab-bar - AdaptiveController is a 'Progressive Reduction' Swift module for adding custom states to Native or Custom iOS UI elements
  • Pager - Easily create sliding tabs with Pager
  • XLPagerTabStrip - Android PagerTabStrip for iOS.
  • TabPageViewController - Paging view controller and scroll tab view.
  • TabDrawer - Customizable TabBar UI element that allows you to run a block of code upon TabBarItem selection, written in Swift
  • SwipeViewController - SwipeViewController is a Swift modification of RKSwipeBetweenViewControllers - navigate between pages / ViewControllers
  • ColorMatchTabs - Interesting way to display tabs
  • BATabBarController - A TabBarController with a unique animation for selection
  • ScrollPager - A scroll pager that displays a list of tabs (segments) and manages paging between given views
  • Segmentio - Animated top/bottom segmented control written in Swift.
  • KYWheelTabController - KYWheelTabController is a subclass of UITabBarController.It displays the circular menu instead of UITabBar.
  • SuperBadges - Add emojis and colored dots as badges for your Tab Bar buttons
  • AZTabBarController - A custom tab bar controller for iOS written in Swift 3.0
  • MiniTabBar - A clean simple alternative to the UITabBar
  • SwipeableTabBarController - UITabBarController with swipe interaction between its tabs.
  • SMSwipeableTabView - Swipeable Views with Tabs (Like Android SwipeView With Tabs Layout)
  • Tabman - A powerful paging view controller with indicator bar for iOS.
  • WormTabStrip Beatiful ViewPager For iOS written in Swift (inspired by Android SmartTabLayout)
  • SSCustomTabMenu Simple customizable iOS bottom menu with Tabbar.
  • SmoothTab - Smooth customizable tabs for iOS apps.
  • ExpandedTabBar - Very creative designed solution for "more" items in UITabBarController
  • BEKCurveTabbar - compatible with XCode +10 and fully customizable via Interface_Builder panel. BEKCurveTabBar derived UITabBar class and compatible with every iOS devices.
  • AnimatedTabBar - A tabbar with number of preset animations. Written with SwiftUI.

back to top

Table View / Collection View

Table View

  • MGSwipeTableCell - UITableViewCell subclass that allows to display swippable buttons with a variety of transitions.
  • YXTPageView - A PageView, which supporting scrolling to transition between a UIView and a UITableView.
  • ConfigurableTableViewController - Typed, yet Flexible Table View Controller https://holko.pl/2016/01/05/typed-table-view-controller/
  • Lightning-Table - A declarative api for working with UITableView.
  • Static - Simple static table views for iOS in Swift.
  • AMWaveTransition - Custom transition between viewcontrollers holding tableviews.
  • SWTableViewCell - An easy-to-use UITableViewCell subclass that implements a swippable content view which exposes utility buttons (similar to iOS 7 Mail Application)
  • ZYThumbnailTableView - a TableView have thumbnail cell only, and you can use gesture let it expands other expansionView, all diy
  • BWSwipeRevealCell - A Swift library for swipeable table cells
  • preview-transition - PreviewTransition is a simple preview gallery controller
  • QuickTableViewController - A simple way to create a UITableView for settings in Swift.
  • TableKit - Type-safe declarative table views with Swift
  • VBPiledView - Simple and beautiful stacked UIView to use as a replacement for an UITableView, UIImageView or as a menu
  • VTMagic - VTMagic is a page container library for iOS.
  • MCSwipeTableViewCell - 👆 Convenient UITableViewCell subclass that implements a swippable content to trigger actions (similar to the Mailbox app).
  • MYTableViewIndex - A pixel perfect replacement for UITableView section index, written in Swift
  • ios-dragable-table-cells - Support for drag-n-drop of UITableViewCells in a navigation hierarchy of view controllers. You drag cells by tapping and holding them.
  • Bohr - Bohr allows you to set up a settings screen for your app with three principles in mind: ease, customization and extensibility.
  • SwiftReorder - Add drag-and-drop reordering to any table view with just a few lines of code. Robust, lightweight, and completely customizable. [e]
  • HoverConversion - HoverConversion realized vertical paging with UITableView. UIViewController will be paging when reaching top or bottom of UITableView contentOffset.
  • TableViewDragger - A cells of UITableView can be rearranged by drag and drop.
  • FlexibleTableViewController - Swift library of generic table view controller with external data processing of functionality, like determine cell's reuseIdentifier related to indexPath, configuration of requested cell for display and cell selection handler
  • CascadingTableDelegate - A no-nonsense way to write cleaner UITableViewDelegate and UITableViewDataSource in Swift.
  • TimelineTableViewCell - Simple timeline view implemented by UITableViewCell written in Swift 3.0.
  • RHPreviewCell - I envied so much Spotify iOS app this great playlist preview cell. Now you can give your users ability to quick check "what content is hidden under your UITableViewCell".
  • TORoundedTableView - A subclass of UITableView that styles it like Settings.app on iPad
  • TableFlip - A simpler way to do cool UITableView animations! (╯°□°)╯︵ ┻━┻
  • DTTableViewManager - Protocol-oriented UITableView management, powered by generics and associated types.
  • SwipeCellKit - Swipeable UITableViewCell based on the stock Mail.app, implemented in Swift.
  • ReverseExtension - A UITableView extension that enables cell insertion from the bottom of a table view.
  • SelectionList - Simple single-selection or multiple-selection checklist, based on UITableView.
  • AZTableViewController - Elegant and easy way to integrate pagination with dummy views.
  • SAInboxViewController - UIViewController subclass inspired by "Inbox by google" animated transitioning.
  • StaticTableViewController - Dynamically hide / show cells of static UITableViewController.
  • OKTableViewLiaison - Framework to help you better manage UITableView configuration.
  • ThunderTable - A simple declarative approach to UITableViewController management using a protocol-based approach.

back to top

Collection View

  • Dwifft - Swift Diff
  • MEVFloatingButton - An iOS drop-in UITableView, UICollectionView and UIScrollView superclass category for showing a customizable floating button on top of it.
  • Preheat - Automates prefetching of content in UITableView and UICollectionView
  • DisplaySwitcher - Custom transition between two collection view layouts
  • Reusable - A Swift mixin for UITableViewCells and UICollectionViewCells
  • Sapporo - Cellmodel-driven collectionview manager
  • StickyCollectionView-Swift - UICollectionView layout for presenting of the overlapping cells.
  • TLIndexPathTools - TLIndexPathTools is a small set of classes that can greatly simplify your table and collection views.
  • IGListKit - A data-driven UICollectionView framework for building fast and flexible lists.
  • FlexibleCollectionViewController - Swift library of generic collection view controller with external data processing of functionality, like determine cell's reuseIdentifier related to indexPath, configuration of requested cell for display and cell selection handler etc
  • ASCollectionView - A Swift collection view inspired by Airbnb.
  • GLTableCollectionView - Netflix and App Store like UITableView with UICollectionView
  • EditDistance - Incremental update tool for UITableView and UICollectionView
  • SwiftSpreadSheet - Spreadsheet CollectionViewLayout in Swift. Fully customizable.
  • GenericDataSource - A generic small reusable components for data source implementation for UITableView/UICollectionView in Swift.
  • PagingView - Infinite paging, Smart auto layout, Interface of similar to UIKit.
  • PJFDataSource - PJFDataSource is a small library that provides a simple, clean architecture for your app to manage its data sources while providing a consistent user interface for common content states (i.e. loading, loaded, empty, and error).
  • DataSources - Type-safe data-driven List-UI Framework. (We can also use ASCollectionNode)
  • KDDragAndDropCollectionView - Dragging & Dropping data across multiple UICollectionViews.
  • SectionScrubber - A component to quickly scroll between collection view sections
  • CollectionKit - A modern Swift framework for building reusable data-driven collection components.
  • AZCollectionViewController - Easy way to integrate pagination with dummy views in CollectionView, make Instagram Discover within minutes.
  • CampcotCollectionView - CampcotCollectionView is a custom UICollectionView written in Swift that allows to expand and collapse sections. It provides a simple API to manage collection view appearance.
  • Stefan - A guy that helps you manage collections and placeholders in easy way.
  • Parade - Parallax Scroll-Jacking Effects Engine for iOS / tvOS.
  • MSPeekCollectionViewDelegateImplementation - A custom paging behavior that peeks the previous and next items in a collection view.
  • SimpleSource - Easy and type-safe iOS table and collection views in Swift.
  • Conv - Conv smart represent UICollectionView data structure more than UIKit.
  • Carbon - 🚴 A declarative library for building component-based user interfaces in UITableView and UICollectionView.
  • ThunderCollection - A simple declarative approach to UICollectionViewController management using a protocol-based approach.
  • DiffableDataSources - A library for backporting UITableView/UICollectionViewDiffableDataSource.
  • StableCollectionViewLayout - This layout adjusts a content offset if the collection view is updated. You can insert, delete or reload items and StableCollectionViewLayout will take care of the content offset.
  • IQListKit - Model driven UITableView/UICollectionView.

back to top

Expandable Cell

  • folding-cell - FoldingCell is an expanding content cell inspired by folding paper material
  • AEAccordion - UITableViewController with accordion effect (expand / collapse cells).
  • ThreeLevelAccordian - This is a customisable three level accordian with options for adding images and accessories images.
  • YNExpandableCell - Awesome expandable, collapsible tableview cell for iOS.
  • Savory - A swift accordion view implementation.
  • ExpyTableView - Make your table view expandable just by implementing one method.
  • FTFoldingPaper - Emulates paper folding effect. Can be integrated with UITableView or used with other UI components.
  • CollapsibleTableSectionViewController - A swift library to support collapsible sections in a table view.
  • ExpandableCell - Fully refactored YNExapnadableCell with more concise, bug free. Awesome expandable, collapsible tableview cell for iOS.
  • expanding-collection - ExpandingCollection is a card peek/pop controller.

back to top

Header

  • ParallaxTableViewHeader - Parallax scrolling effect on UITableView header view when a tableView is scrolled.
  • CSStickyHeaderFlowLayout - UICollectionView replacement of UITableView. Do even more like Parallax Header, Sticky Section Header.
  • GSKStretchyHeaderView - Configurable yet easy to use stretchy header view for UITableView and UICollectionView.

back to top

Placeholder

  • DZNEmptyDataSet - A drop-in UITableView/UICollectionView superclass category for showing empty datasets whenever the view has no content to display.
  • HGPlaceholders - Nice library to show and create placeholders and Empty States for any UITableView/UICollectionView in your project
  • ListPlaceholder - ListPlaceholder is a swift library allows you to easily add facebook style animated loading placeholder to your tableviews or collection views
  • WLEmptyState - A component that lets you customize the view when the dataset of UITableView is empty.

back to top

Collection View Layout

  • CHTCollectionViewWaterfallLayout - The waterfall (i.e., Pinterest-like) layout for UICollectionView.
  • FMMosaicLayout - A drop-in mosaic collection view layout with a focus on simple customizations.
  • mosaic-layout - A mosaic collection view layout inspired by Lightbox's Algorithm, written in Swift
  • TLLayoutTransitioning - Enhanced transitioning between UICollectionView layouts in iOS.
  • CenteredCollectionView - A lightweight UICollectionViewLayout that 'pages' and centers it's cells 🎡 written in Swift.
  • CollectionViewSlantedLayout - UICollectionViewLayout with slanted content
  • SquareMosaicLayout - An extandable mosaic UICollectionViewLayout with a focus on extremely flexible customizations
  • BouncyLayout - BouncyLayout is a collection view layout that makes your cells bounce.
  • AZSafariCollectionViewLayout - AZSafariCollectionViewLayout is replica of safari browser history page layout. very easy to use, IBInspectable are given for easy integration.
  • Blueprints - A framework that is meant to make your life easier when working with collection view flow layouts.
  • UICollectionViewSplitLayout - UICollectionViewSplitLayout makes collection view more responsive.
  • Swinflate - A bunch of layouts providing light and seamless experiences in your CollectionView.

back to top

Tag

  • PARTagPicker - This pod provides a view controller for choosing and creating tags in the style of wordpress or tumblr.
  • AMTagListView - UIScrollView subclass that allows to add a list of highly customizable tags.
  • TagCellLayout - UICollectionView layout for Tags with Left, Center & Right alignments.
  • TTGTagCollectionView - Show simple text tags or custom tag views in a vertical scrollable view.
  • TagListView - Simple and highly customizable iOS tag list view, in Swift.
  • RKTagsView - Highly customizable iOS tags view (like NSTokenField). Supports editing, multiple selection, Auto Layout and much more.
  • WSTagsField - An iOS text field that represents different Tags.
  • AKMaskField - AKMaskField is UITextField subclass which allows enter data in the fixed quantity and in the certain format.
  • YNSearch - Awesome fully customizable search view like Pinterest written in Swift 3.
  • SFFocusViewLayout - UICollectionViewLayout with focused content.

back to top

TextField & TextView

  • JVFloatLabeledTextField - UITextField subclass with floating labels.
  • ARAutocompleteTextView - subclass of UITextView that automatically displays text suggestions in real-time. Perfect for email Textviews.
  • IQDropDownTextField - TextField with DropDown support using UIPickerView.
  • UITextField-Shake - UITextField category that adds shake animation. Also with Swift version
  • HTYTextField - A UITextField with bouncy placeholder.
  • MVAutocompletePlaceSearchTextField - A drop-in Autocompletion control for Place Search like Google Places, Uber, etc.
  • AutocompleteField - Add word completion to your UITextFields.
  • RSKGrowingTextView - A light-weight UITextView subclass that automatically grows and shrinks.
  • RSKPlaceholderTextView - A light-weight UITextView subclass that adds support for placeholder.
  • StatefulViewController - Placeholder views based on content, loading, error or empty states.
  • MBAutoGrowingTextView - An auto-layout base UITextView subclass which automatically grows with user input and can be constrained by maximal and minimal height - all without a single line of code.
  • TextFieldEffects - Custom UITextFields effects inspired by Codrops, built using Swift.
  • Reel Search - RAMReel is a controller that allows you to choose options from a list.
  • MLPAutoCompleteTextField - a subclass of UITextField that behaves like a typical UITextField with one notable exception: it manages a drop down table of autocomplete suggestions that update as the user types.
  • SkyFloatingLabelTextField - A beautiful and flexible text field control implementation of "Float Label Pattern". Written in Swift.
  • VMaskTextField - VMaskTextField is a library which create an input mask for iOS.
  • TJTextField - UITextField with underline and left image.
  • NextGrowingTextView - The next in the generations of 'growing textviews' optimized for iOS 7 and above.
  • RPFloatingPlaceholders - UITextField and UITextView subclasses with placeholders that change into floating labels when the fields are populated with text.
  • CurrencyTextField - UITextField that automatically formats text to display in the currency format.
  • UITextField-Navigation - UITextField-Navigation adds next, previous and done buttons to the keyboard for your UITextFields.
  • AutoCompleteTextField - Auto complete with suggestion textfield.
  • PLCurrencyTextField - UITextField that support currency in the right way.
  • PasswordTextField - A custom TextField with a switchable icon which shows or hides the password and enforce good password policies.
  • AnimatedTextInput - Animated UITextField and UITextView replacement for iOS.
  • KMPlaceholderTextView - A UITextView subclass that adds support for multiline placeholder written in Swift.
  • NxEnabled - Library which allows you binding enabled property of button with textable elements (TextView, TextField).
  • AwesomeTextField - Awesome TextField is a nice and simple library for iOS. It's highly customisable and easy-to-use tool. Works perfectly for any registration or login forms in your app.
  • ModernSearchBar - The famous iOS search bar with auto completion feature implemented.
  • SelectableTextView - A text view that supports selection and expansion.
  • CBPinEntryView - A customisable view written in Swift 4.2 for any pin, code or password entry. Supports one time codes in iOS 12.
  • GrowingTextView - An UITextView in Swift3 and Swift2.3. Support auto growing, placeholder and length limit.
  • DTTextField - DTTextField is a custom textfield with floating placeholder and error label in Swift3.0.
  • TextFieldCounter - UITextField character counter with lovable UX.
  • RSFloatInputView - A Float Input View with smooth animation and supporting icon and seperator written with Swift.
  • TaniwhaTextField - TaniwhaTextField is a lightweight and beautiful swift textfield framework. It has float label pattern, and also you can highly customise it.
  • InstantSearch iOS - A library of widgets and helpers to build instant-search applications on iOS.
  • SearchTextField - UITextField subclass with autocompletion suggestions list.
  • PYSearch - An elegant search controller which replaces the UISearchController for iOS (iPhone & iPad).
  • styled-text - Declarative text styles and streamlined Dynamic Type support for iOS.
  • TweeTextField - Lightweight set of text fields with nice animation and functionality.
  • MeasurementTextField - UITextField-based control for (NS)Measurement values input.
  • VENTokenField - Easy-to-use token field that is used in the Venmo app.
  • ALTextInputBar - An auto growing text input bar for messaging apps.
  • Tagging - TextView that provides easy to use tagging feature for Mention or Hashtag.
  • InputBarAccessoryView - A simple and easily customizable InputAccessoryView for making powerful input bars with autocomplete and attachments.
  • CocoaTextField - UITextField created according to the Material.IO guidelines of 2019.
  • CHIOTPField - A set of textfields that can be used for One-time passwords, SMS codes, PIN codes, etc.
  • Streamoji - Custom emoji rendering library with support for GIFs and images, UITextView extension.

back to top

UIPageControl

  • PageControl - A nice, animated UIPageControl alternative.
  • PageControls - This is a selection of custom page controls to replace UIPageControl, inspired by a dribbble found here.
  • CHIPageControl - A set of cool animated page controls to replace boring UIPageControl.
  • Page-Control - Beautiful, animated and highly customizable UIPageControl alternative.
  • TKRubberIndicator - Rubber Indicator in Swift.

back to top

Web View

  • Otafuku - Otafuku provides utility classes to use WKWebView in Swift.
  • SwiftWebVC - A drop-in inline browser for your Swift iOS app.
  • SVWebViewController - A drop-in inline browser for your iOS app.
  • PTPopupWebView - PTPopupWebView is a simple and useful WebView for iOS, which can be popup and has many of the customized item.

back to top

Utility

  • Underscore.m - A DSL for Data Manipulation.
  • XExtensionItem - Easier sharing of structured data between iOS applications and share extensions.
  • ReflectableEnum - Reflection for enumerations in Objective-C.
  • ObjectiveSugar - ObjectiveC additions for humans. Ruby style.
  • OpinionatedC - Because Objective-C should have inherited more from Smalltalk.
  • SwiftRandom - Generator for random data.
  • RandomKit - Random data generation in Swift.
  • YOLOKit - Getting square objects down round holes.
  • EZSwiftExtensions - 😏 How Swift standard types and classes were supposed to work.
  • Pantry - The missing light persistence layer for Swift.
  • SwiftParsec - A parser combinator library written in the Swift programming language.
  • OrderedSet - A Swift collection of unique, ordered objects.
  • Datez - Swift library for dealing with NSDate, NSCalendar, and NSDateComponents.
  • BFKit - An Objective-C collection of useful classes to develop Apps faster.
  • BFKit-Swift - A Swift collection of useful classes to develop Apps faster.
  • Scale - Unit converter in Swift (available via CocoaPods).
  • Standard Template Protocols - Protocols for your every day iOS needs.
  • TimeLord - Easy DateTime (NSDate) management in Swift.
  • AppVersionMonitor - Monitor iOS app version easily.
  • Sugar - Something sweet that goes great with your Cocoa.
  • Then - ✨ Super sweet syntactic sugar for Swift initializers.
  • Kvitto - App Store Receipt Validation.
  • Notificationz - Helping you own NSNotificationCenter in Swift.
  • SwiftFoundation - Cross-Platform, Protocol-Oriented Programming base library to complement the Swift Standard Library. (Pure Swift, Supports Linux).
  • libextobjc - A Cocoa library to extend the Objective-C programming language.
  • VersionTrackerSwift - Track which versions of your app a user has previously installed..
  • DeviceGuru - DeviceGuru is a simple lib (Swift) to know the exact type of the device, e.g. iPhone 6 or iPhone 6s.
  • AEAppVersion - Simple and Lightweight App Version Tracking for iOS written in Swift.
  • BlocksKit - The Objective-C block utilities you always wish you had.
  • SwiftyUtils - All the reusable code that we need in each project.
  • RateLimit - Simple utility for only executing code every so often.
  • Outlets - Utility functions for validating IBOutlet and IBAction connections.
  • EasyAbout - A way to easily add CocoaPods licenses and App Version to your iOS App using the Settings Bundle.
  • Validated - A Swift μ-Library for Somewhat Dependent Types.
  • Cent - Extensions for Swift Standard Types and Classes.
  • AssistantKit - Easy way to detect iOS device properties, OS versions and work with screen sizes. Powered by Swift.
  • SwiftLinkPreview - It makes a preview from an url, grabbing all the information such as title, relevant texts and images.
  • BundleInfos - Simple getter for Bundle informations. like short version from bundle.
  • YAML.framework - Proper YAML support for Objective-C based on LibYAML.
  • ReadabilityKit - Metadata extractor for news, articles and full-texts in Swift.
  • MissionControl-iOS - Super powerful remote config utility written in Swift (iOS, watchOS, tvOS, macOS).
  • SwiftTweaks - Tweak your iOS app without recompiling!
  • UnsupportedOSVersionAlert - Alerts users with a popup if they use an app with an unsupported version of iOS (e.g. iOS betas).
  • SwiftSortUtils - This library takes a shot at making sorting in Swift more pleasant. It also allows you to reuse your old NSSortDescriptor instances in Swift.
  • Retry - Haven't you wished for try to sometimes try a little harder? Meet retry .
  • ObjectiveKit - Swift-friendly API for Objective C runtime functions.
  • MoyaSugar - Syntactic sugar for Moya.
  • SwifterSwift - A handy collection of more than 400 native Swift 4 extensions to boost your productivity.
  • Eject - An eject button for Interface Builder to generate swift code.
  • ContactsWrapper - Easy to use wrapper for both contacts and contacts group with Objective-C.
  • XestiMonitors - An extensible monitoring framework written in Swift.
  • OpenSourceController - The simplest way to display the libraries licences used in your application.
  • App-Update-Tracker - Easily detect and run code upon app installation or update.
  • ExtensionalSwift - Useful swift extensions in one place.
  • InAppSettingsKit - This iOS framework allows settings to be in-app in addition to or instead of being in the Settings app.
  • MMWormhole - Message passing between iOS apps and extensions.
  • DefaultStringConvertible - A default CustomStringConvertible implementation for Swift types.
  • FluxCapacitor - FluxCapacitor makes implementing Flux design pattern easily with protocols and typealias.
  • VTAcknowledgementsViewController - Ready to use “Acknowledgements”/“Licenses”/“Credits” view controller for CocoaPods.
  • Closures - Swifty closures for UIKit and Foundation.
  • WhatsNew - Showcase new features after an app update similar to Pages, Numbers and Keynote.
  • MKUnits - Unit conversion library for Swift.
  • ActionClosurable - Extensions which helps to convert objc-style target/action to swifty closures.
  • ios_system - Drop-in replacement for system() in iOS programs.
  • SwiftProvisioningProfile - Parse provisioning profiles into Swift models.
  • Once - Minimalist library to manage one-off operations.
  • ZamzamKit - A collection of micro utilities and extensions for Standard Library, Foundation and UIKit.
  • DuctTape - KeyPath dynamicMemberLookup based syntax sugar for swift.
  • ReviewKit - A framework which helps gatekeep review prompt requests – using SKStoreReviewController – to users who have had a good time using your app by logging positive and negative actions.
  • SwiftBoost - Collection of Swift-extensions to boost development process.

back to top

User Consent

  • SmartlookConsentSDK - Open source SDK which provides a configurable control panel where user can select their privacy options and store the user preferences for the app.
  • PrivacyFlash Pro - Generate a privacy policy for your iOS app from its code

back to top

VR

  • VR Toolkit iOS - A sample project that provides the basics to create an interactive VR experience on iOS.
  • 360 VR Player - A open source, ad-free, native and universal 360 degree panorama video player for iOS.
  • simple360player - Free & ad-free 360 VR Video Player. Flat or Stereoscopic. In Swift 2.
  • Swifty360Player - iOS 360-degree video player streaming from an AVPlayer with Swift.

back to top

Walkthrough / Intro / Tutorial

  • Onboard - Easily create a beautiful and engaging onboarding experience with only a few lines of code.
  • EAIntroView - Highly customizable drop-in solution for introduction views.
  • MYBlurIntroductionView - A super-charged version of MYIntroductionView for building custom app introductions and tutorials.
  • BWWalkthrough - A class to build custom walkthroughs for your iOS App.
  • GHWalkThrough - A UICollectionView backed drop-in component for introduction views.
  • ICETutorial - A nice tutorial like the one introduced in the Path 3.X App.
  • JazzHands - Jazz Hands is a simple keyframe-based animation framework for UIKit. Animations can be controlled via gestures, scroll views, KVO, or ReactiveCocoa.
  • RazzleDazzle - A simple keyframe-based animation framework for iOS, written in Swift. Perfect for scrolling app intros.
  • Instructions - Easily add customizable coach marks into you iOS project.
  • SwiftyWalkthrough - The easiest way to create a great walkthrough experience in your apps, powered by Swift.
  • Gecco - Spotlight view for iOS.
  • VideoSplashKit - VideoSplashKit - UIViewController library for creating easy intro pages with background videos.
  • Presentation - Presentation helps you to make tutorials, release notes and animated pages.
  • AMPopTip - An animated popover that pops out a given frame, great for subtle UI tips and onboarding.
  • AlertOnboarding - A simple and handsome AlertView for onboard your users in your amazing world.
  • EasyTipView - Fully customisable tooltip view in Swift.
  • paper-onboarding - PaperOnboarding is a material design slider.
  • InfoView - Swift based simple information view with pointed arrow.
  • Intro - An iOS framework to easily create simple animated walkthrough, written in Swift.
  • AwesomeSpotlightView - Tool to create awesome tutorials or educate user to use application. Or just highlight something on screen. Written in Swift.
  • SwiftyOnboard - A simple way to add onboarding to your project.
  • WVWalkthroughView - Utility to easily create walkthroughs to help with user onboarding.
  • SwiftyOverlay - Easy and quick way to show intro / instructions over app UI without any additional images in real-time!
  • SwiftyOnboardVC - Lightweight walkthrough controller thats uses view controllers as its subviews making the customization endless.
  • Minamo - Simple coach mark library written in Swift.
  • Material Showcase iOS - An elegant and beautiful showcase for iOS apps.
  • WhatsNewKit - Showcase your awesome new app features.
  • OnboardKit - Customisable user onboarding for your iOS app.
  • ConcentricOnboarding - SwiftUI library for a walkthrough or onboarding flow with tap actions.

back to top

Websites

back to top

WebSocket

  • SocketRocket - A conforming Objective-C WebSocket client library.
  • socket.io-client-swift - Socket.IO-client for iOS/macOS.
  • SwiftWebSocket - High performance WebSocket client library for Swift, iOS and macOS.
  • Starscream - Websockets in swift for iOS and macOS.
  • SwiftSocket - simple socket library for apple swift lang.
  • Socks - Pure-Swift Sockets: TCP, UDP; Client, Server; Linux, macOS.
  • SwifterSockets - A collection of socket utilities in Swift for OS-X and iOS.
  • Swift-ActionCableClient - ActionCable is a new WebSocket server being released with Rails 5 which makes it easy to add real-time features to your app.
  • DNWebSocket - Object-Oriented, Swift-style WebSocket Library (RFC 6455) for Swift-compatible Platforms.

back to top

Tools

  • Shark - Swift Script that transforms the .xcassets folder into a type safe enum.
  • SBConstants - Generate a constants file by grabbing identifiers from storyboards in a project.
  • R.swift - Tool to get strong typed, autocompleted resources like images, cells and segues in your Swift project.
  • SwiftGen - A collection of Swift tools to generate Swift code (enums for your assets, storyboards, Localizable.strings and UIColors).
  • Blade - Generate Xcode image catalogs for iOS / macOS app icons, universal images, and more.
  • Retini - A super simple retina (2x, 3x) image converter.
  • Jazzy - Soulful docs for Swift & Objective-C.
  • appledoc - ObjectiveC code Apple style documentation set generator.
  • Laurine - Laurine - Localization code generator written in Swift. Sweet!
  • StoryboardMerge - Xcode storyboards diff and merge tool.
  • ai2app - Creating AppIcon sets from Adobe Illustrator (all supported formats).
  • ViewMonitor - ViewMonitor can measure view positions with accuracy.
  • abandoned-strings - Command line program that detects unused resource strings in an iOS or macOS application.
  • swiftenv - swiftenv allows you to easily install, and switch between multiple versions of Swift.
  • Misen - Script to support easily using Xcode Asset Catalog in Swift.
  • git-xcp - A Git plugin for versioning workflow of real-world Xcode project. fastlane's best friend.
  • WatchdogInspector - Shows your current framerate (fps) in the status bar of your iOS app.
  • Cichlid - automatically delete the current project's DerivedData directories.
  • Delta - Managing state is hard. Delta aims to make it simple.
  • SwiftLintXcode - An Xcode plug-in to format your code using SwiftLint.
  • XCSwiftr - An Xcode Plugin to convert Objective-C to Swift.
  • SwiftKitten - Swift autocompleter for Sublime Text, via the adorable SourceKitten framework.
  • Kin - Have you ever found yourself undoing a merge due to a broken Xcode build? Then Kin is your tool. It will parse your project configuration file and detect errors.
  • AVXCAssets-Generator - AVXCAssets Generator takes path for your assets images and creates appiconset and imageset for you in just one click.
  • Peek - Take a Peek at your application.
  • SourceKitten - An adorable little framework and command line tool for interacting with SourceKit.
  • xcbuild - Xcode-compatible build tool.
  • XcodeIssueGenerator - An executable that can be placed in a Run Script Build Phase that marks comments like // TODO: or // SERIOUS: as warnings or errors so they display in the Xcode Issue Navigator.
  • SwiftCompilationPerformanceReporter - Generate automated reports for slow Swift compilation paths in specific targets.
  • BuildTimeAnalyzer - Build Time Analyzer for Swift.
  • Duration - A simple Swift package for measuring and reporting the time taken for operations.
  • Benchmark - The Benchmark module provides methods to measure and report the time used to execute Swift code.
  • MBAssetsImporter - Import assets from Panoramio or from your macOS file system with their metadata to your iOS simulator (Swift 2.0).
  • Realm Browser - Realm Browser is a macOS utility to open and modify realm database files.
  • SuperDelegate – SuperDelegate provides a clean application delegate interface and protects you from bugs in the application lifecycle.
  • fastlane-plugin-appicon - Generate required icon sizes and iconset from a master application icon.
  • infer - A static analyzer for Java, C and Objective-C.
  • PlayNow - Small app that creates empty Swift playground files and opens them with Xcode.
  • Xtrace - Trace Objective-C method calls by class or instance.
  • xcenv - Groom your Xcode environment.
  • playgroundbook - Tool for Swift Playground books.
  • Ecno - Ecno is a task state manager built on top of UserDefaults in pure Swift 3.
  • ipanema - ipanema analyzes and prints useful information from .ipa file.
  • pxctest - Parallel XCTest - Execute XCTest suites in parallel on multiple iOS Simulators.
  • IBM Swift Sandbox - The IBM Swift Sandbox is an interactive website that lets you write Swift code and execute it in a server environment – on top of Linux!
  • FBSimulatorControl - A macOS library for managing and manipulating iOS Simulators
  • Nomad - Suite of command line utilities & libraries for sending APNs, create & distribute .ipa, verify In-App-Purchase receipt and more.
  • Cookiecutter - A template for new Swift iOS / tvOS / watchOS / macOS Framework project ready with travis-ci, cocoapods, Carthage, SwiftPM and a Readme file.
  • Sourcery - A tool that brings meta-programming to Swift, allowing you to code generate Swift code.
  • AssetChecker 👮 - Keeps your Assets.xcassets files clean and emits warnings when something is suspicious.
  • PlayAlways - Create Xcode playgrounds from your menu bar
  • GDPerformanceView-Swift - Shows FPS, CPU usage, app and iOS versions above the status bar and report FPS and CPU usage via delegate.
  • Traits - Library for a real-time design and behavior modification of native iOS apps without recompiling (code and interface builder changes are supported).
  • Struct - A tool for iOS and Mac developers to automate the creation and management of Xcode projects.
  • Nori - Easier to apply code based style guide to storyboard.
  • Attabench - Microbenchmarking app for Swift with nice log-log plots.
  • Gluten - Nano library to unify XIB and it's code.
  • LicensePlist - A license list generator of all your dependencies for iOS applications.
  • AppDevKit - AppDevKit is an iOS development library that provides developers with useful features to fulfill their everyday iOS app development needs.
  • Tweaks - An easy way to fine-tune, and adjust parameters for iOS apps in development.
  • FengNiao - A command line tool for cleaning unused resources in Xcode.
  • LifetimeTracker - Find retain cycles / memory leaks sooner.
  • Plank - A tool for generating immutable model objects.
  • Lona - A tool for defining design systems and using them to generate cross-platform UI code, Sketch files, images, and other artifacts.
  • XcodeGen - Command line tool that generates your Xcode project from a spec file and your folder structure.
  • iSimulator - iSimulator is a GUI utility to control the Simulator, and manage the app installed on the simulator.
  • Natalie - Storyboard Code Generator.
  • Transformer - Easy Online Attributed String Creator. This tool lets you format a string directly in the browser and then copy/paste the attributed string code into your app.
  • ProvisionQL - Quick Look plugin for apps and provisioning profile files.
  • xib2Storyboard - A tool to convert Xcode .xib to .storyboard files.
  • Zolang - A programming language for sharing logic between iOS, Android and Tools.
  • xavtool - Command-line utility to automatically increase iOS / Android applications version.
  • Cutter - A tool to generate iOS Launch Images (Splash Screens) for all screen sizes starting from a single template.
  • nef - A set of command line tools for Xcode Playground: lets you have compile-time verification of your documentation written as Xcode Playgrounds, generates markdown files, integration with Jekyll for building microsites and Carbon to export code snippets.
  • Pecker - CodePecker is a tool to detect unused code.
  • Speculid - generate Image Sets and App Icons from SVG, PNG, and JPEG files
  • SkrybaMD - Markdown Documentation generator. If your team needs an easy way to maintain and create documentation, this generator is for you.
  • Storyboard -> SwiftUI Converter - Storyboard -> SwiftUI Converter is a converter to convert .storyboard and .xib to SwiftUI.
  • Swift Package Index - Swift packages list with many information about quality and compatiblity of package.
  • Xcodes.app - The easiest way to install and switch between multiple versions of Xcode.
  • Respresso Image Converter - Multiplatform image converter for iOS, Android, and Web that supports pdf, svg, vector drawable, jpg, png, and webp formats.
  • Rugby - 🏈 Cache CocoaPods for faster rebuild and indexing Xcode project.

back to top

Tutorials and Keynotes

back to top

UI Templates

back to top

Xcode

Extensions

  • CleanClosureXcode - An Xcode Source Editor extension to clean the closure syntax.
  • xTextHandler - Xcode Source Editor Extension Toolset (Plugins for Xcode 8).
  • SwiftInitializerGenerator - Xcode 8 Source Code Extension to Generate Swift Initializers.
  • XcodeEquatableGenerator - Xcode 8 Source Code Extension will generate conformance to Swift Equatable protocol based on type and fields selection.
  • Import - Xcode extension for adding imports from anywhere in the code.
  • Mark - Xcode extension for generating MARK comments.
  • XShared - Xcode extension which allows you copying the code with special formatting quotes for social (Slack, Telegram).
  • XGist - Xcode extension which allows you to send your text selection or entire file to GitHub's Gist and automatically copy the Gist URL into your Clipboard.
  • Swiftify - Objective-C to Swift online code converter and Xcode extension.
  • DocumenterXcode - Attempt to give a new life for VVDocumenter-Xcode as source editor extension.
  • Snowonder - Magical import declarations formatter for Xcode.
  • XVim2 - Vim key-bindings for Xcode 9.
  • Comment Spell Checker - Xcode extension for spell checking and auto correcting code comments.
  • nef - This Xcode extension enables you to make a code selection and export it to a snippets. Available on Mac AppStore.

back to top

Themes

back to top

Other Xcode

  • awesome-xcode-scripts - A curated list of useful xcode scripts.
  • Synx - A command-line tool that reorganizes your Xcode project folder to match your Xcode groups.
  • dsnip - Tool to generate (native) Xcode code snippets from all protocols/delegate methods of UIKit (UITableView, ...)
  • SBShortcutMenuSimulator - 3D Touch shortcuts in the Simulator.
  • awesome-gitignore-templates - A collection of swift, objective-c, android and many more langugages .gitignore templates.
  • swift-project-template - Template for iOS Swift project generation.
  • Swift-VIPER-Module - Xcode template for create modules with VIPER Architecture written in Swift 3.
  • ViperC - Xcode template for VIPER Architecture for both Objective-C and Swift.
  • XcodeCodeSnippets - A set of code snippets for iOS development, includes code and comments snippets.
  • Xcode Keymap for Visual Studio Code - This extension ports popular Xcode keyboard shortcuts to Visual Studio Code.
  • Xcode Template Manager - Xcode Template Manager is a Swift command line tool that helps you manage your Xcode project templates.
  • VIPER Module Template - Xcode Template of VIPER Module which generates all layers of VIPER.
  • Xcode Developer Disk Images - Xcode Developer Disk Images is needed when you want to put your build to the device, however sometimes your Xcode is not updated with the latest Disk Images, you could find them here for convenience.
  • Swift Macros 🚀 - A curated list of community-created Macros and associated learning resources.

back to top

About

A curated list of awesome iOS ecosystem, including Objective-C and Swift Projects

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Swift 100.0%