Skip to content

vsouza/awesome-ios

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

6,512 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
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

  • Answers by Fabric - Answers gives you real-time insight into peopleโ€™s experience in your app.
  • Aptabase - Open Source, Privacy-First and Simple Analytics for Swift Apps.
  • 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.
  • Embrace - Mobile observability, built on OpenTelemetry, to provide user-focused, reliable apps.
  • 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.
  • Measure - Open source, self-hostable mobile app monitoring with error tracking, performance tracing and full session timelines to spend less time stitching context and fix issues faster.
  • 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.

back to top

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.
  • 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.
  • 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!

back to top

App Store

Apple Guidelines and version notification libraries

back to top

Apple TV

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

back to top

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.
  • 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.
  • 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

  • ARKit Virtual Objects - Placing Virtual Objects in Augmented Reality.
  • ARKit-CoreLocation - Combines the high accuracy of AR with the scale of GPS data.
  • ARVideoKit - Record and capture ARKit videos, photos, Live Photos, and GIFs.
  • 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.
  • OAuth2 - OAuth2 framework for macOS and iOS, written in Swift.
  • OAuthSwift - Swift based OAuth library for iOS
  • 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.
  • EthereumKit - EthereumKit is a free, open-source Swift framework for easily interacting with the Ethereum.
  • Web3.swift - Web3 library for interacting with the Ethereum blockchain.
  • web3swift - Elegant Web3js functionality in Swift. Native ABI parsing and smart contract interactions.

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.
  • 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.
  • mattress - iOS Offline Caching for Web Content.
  • 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.
  • YYCache - High performance cache framework for iOS.

back to top

Charts

Explore beautiful, easy-to-use, and customizable iOS charting libraries, perfect for creating dynamic and stunning data visualizations.

  • ANDLineChartView - ANDLineChartView is easy to use view-based class for displaying animated line chart.
  • Charts - A powerful chart/graph framework, the iOS equivalent to MPAndroidChart.
  • core-plot - A 2D plotting lib which is highly customizable and capable of drawing many types of plots.
  • EatFit - Eat fit is a component for attractive data representation inspired by Google Fit.
  • EChart - iOS/iPhone/iPad Chart, Graph. Event handling and animation supported.
  • FSInteractiveMap - A charting library to visualize and interact with a vector map on iOS. It's like Geochart but for iOS.
  • FSLineChart - A line chart library for iOS.
  • JBChartView - iOS-based charting library for both line and bar graphs.
  • JYRadarChart - An iOS open source Radar Chart implementation.
  • 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.
  • PNChart - A simple and beautiful chart lib used in Piner and CoinsMan for iOS.
  • Scrollable-GraphView - An adaptive scrollable graph view for iOS to visualise simple discrete datasets. Written in Swift.
  • SwiftChart - Line and area chart library for iOS.
  • TEAChart - Simple and intuitive iOS chart library. Contribution graph, clock chart, and bar chart.
  • TKRadarChart - A customizable radar chart in Swift.
  • TWRCharts - An iOS wrapper for ChartJS. Easily build animated charts by leveraging the power of native Obj-C code.

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.
  • 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.

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.
  • 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.
  • 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.

  • ColorizeSwift - Terminal string styling for Swift.
  • Commander - Compose beautiful command line interfaces in Swift.
  • Guaka - The smartest and most beautiful (POSIX compliant) command line framework for Swift.
  • Linenoise - A pure Swift replacement for readline
  • nef - Command line tool to ease the creation of documentation in the form of Swift Playgrounds.
  • Progress - Add beautiful progress bars to your loops.
  • SourceDocs - Command Line Tool that generates Markdown documentation from inline source code comments.
  • Swift Argument Parser - Straightforward, type-safe argument parsing for Swift
  • SwiftCLI - A powerful framework for developing CLIs in Swift
  • Swiftline - Swiftline is a set of tools to help you create command line applications.
  • SwiftShell - A Swift framework for shell scripting and running shell commands.
  • SwiftyTextTable - A lightweight library for generating text tables.

back to top

Concurrency

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

  • AsyncNinja - A complete set of concurrency and reactive programming primitives.
  • AsyncQueue - A library of queues that enable sending ordered tasks from synchronous to asynchronous contexts.
  • Concurrent - Functional Concurrency Primitives.
  • 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.
  • Venice - CSP (Coroutines, Channels, Select) for Swift.

back to top

Core Data

Core data Frameworks, wrappers, generators and boilerplates.

  • AERecord - Super awesome Core Data wrapper in Swift.
  • CloudCore - Robust CloudKit synchronization: offline editing, relationships, shared and public databases, field-level deltas, and more.
  • CoreStore - Powerful Core Data framework for Incremental Migrations, Fetching, Observering, etc.
  • Ensembles - A synchronization framework for Core Data.
  • Graph - An elegant data-driven framework for CoreData in Swift.
  • JSQCoreDataKit - A swifter Core Data stack.
  • MagicalRecord - Super Awesome Easy Fetching for Core Data.
  • Mogenerator - Automatic Core Data code generation.
  • 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.
  • PrediKit - An NSPredicate DSL for iOS, macOS, tvOS, & watchOS. Inspired by SnapKit and lovingly written in Swift.
  • 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.
  • Sync - Modern Swift JSON synchronization to Core Data.

back to top

Courses

Online courses, tutorials and learning resources to kickstart your iOS development journey.

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.

  • Couchbase Mobile - Couchbase document store for mobile with cloud sync.
  • Default - Modern interface to UserDefaults + Codable support.
  • Defaults - Swifty and modern UserDefaults.
  • DuckDB - DuckDB is a high-performance analytical database system.
  • FCModel - An alternative to Core Data for people who like having direct SQL access.
  • Fluent - Simple ActiveRecord implementation for working with your database in Swift.
  • FMDB - A Cocoa / Objective-C wrapper around SQLite.
  • GRDB.swift - A versatile SQLite toolkit for Swift, with WAL mode support.
  • IceCream - Sync Realm Database with CloudKit.
  • MMKV - An efficient, small mobile key-value storage framework developed by WeChat. Works on iOS, Android, macOS and Windows.
  • MongoKitten - A pure Swift MongoDB client implementation with support for embedded databases.
  • MySQL - A Swift wrapper around the MySQL client library, enabling access to MySQL servers.
  • Nora - Nora is a Firebase abstraction layer for working with FirebaseDatabase and FirebaseStorage.
  • ObjectBox - ObjectBox is a superfast, light-weight object persistence framework.
  • OHMySQL - An Objective-C wrapper of MySQL C API.
  • PersistenceKit - Store and retrieve Codable objects to various persistence layers, in a couple lines of code.
  • 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.
  • Prephirences - Prephirences is a Swift library that provides useful protocols and convenience methods to manage application preferences, configurations and app-state.
  • Realm - The alternative to CoreData and SQLite: Simple, modern and fast.
  • RealmGeoQueries - RealmGeoQueries simplifies spatial queries with Realm Cocoa. In the absence of and official functions, this library provide the possibility to do proximity search.
  • SecureDefaults - A lightweight wrapper over UserDefaults/NSUserDefaults with an extra AES-256 encryption layer.
  • Shallows - Your lightweight persistence toolbox.
  • SQLite.swift - A type-safe, Swift-language layer over SQLite3.
  • StorageKit - Your Data Storage Troubleshooter.
  • SugarRecord - Data persistence management library.
  • SwiftStore - Key-Value store for Swift backed by LevelDB.
  • SwiftyUserDefaults - Statically-typed NSUserDefaults.
  • TypedDefaults - TypedDefaults is a utility library to type-safely use NSUserDefaults.
  • Unrealm - Unrealm enables you to easily store Swift native Classes, Structs and Enums into Realm.
  • UserDefaults - Simple, Strongly Typed UserDefaults for iOS, macOS and tvOS.
  • WCDB - WCDB is an efficient, complete, easy-to-use mobile database framework for iOS, macOS.
  • YapDatabase - YapDatabase is an extensible database for iOS & Mac.

back to top

Data Structures / Algorithms

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

  • Algorithm - Algorithm is a collection of data structures that are empowered by a probability toolset.
  • BTree - Fast ordered collections for Swift using in-memory B-trees.
  • Buffer - Swift ฮผ-framework for efficient array diffs, collection observation and cell configuration.
  • Changeset - Minimal edits from one collection to another.
  • Differ - Swift library to generate differences and patches between collections.
  • DifferenceKit - A fast and flexible O(n) difference algorithm framework for Swift collection.
  • Differific - A fast and convenient diffing framework.
  • Dispatch - Multi-store Flux implementation in Swift.
  • Dollar - A functional tool-belt for Swift Language similar to Lo-Dash or Underscore.js in Javascript https://www.dollarswift.org/.
  • EKAlgorithms - Some well known CS algorithms & data structures in Objective-C.
  • HeckelDiff - A fast Swift diffing library.
  • KeyPathKit - KeyPathKit provides a seamless syntax to manipulate data using typed keypaths.
  • Result - Swift type modeling the success/failure of arbitrary operations.
  • swift-algorithm-club - Algorithms and data structures in Swift, with explanations!
  • SwiftGraph - Graph data structure and utility functions in pure Swift.
  • SwiftPriorityQueue - A priority queue with a classic binary heap implementation in pure Swift.
  • SwiftStructures - Examples of commonly used data structures and algorithms in Swift.

back to top

Date & Time

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

  • 10Clock - This Control is a beautiful time-of-day picker heavily inspired by the iOS 10 "Bedtime" timer.
  • AnyDate - Swifty Date & Time API inspired from Java 8 DateTime API.
  • Chronology - Building a better date/time library.
  • DateHelper - Convenience extension for NSDate in Swift.
  • DateTools - Dates and times made easy in Objective-C.
  • iso-8601-date-formatter - A Cocoa NSFormatter subclass to convert dates to and from ISO-8601-formatted strings. Supports calendar, week, and ordinal formats.
  • Kronos - Elegant NTP date library in Swift.
  • NVDate - Swift4 Date extension library.
  • Schedule - โณ A missing lightweight task scheduler for Swift with an incredibly human-friendly syntax.
  • Solar - A Swift micro library for generating Sunrise and Sunset times.
  • SwiftDate - The best way to manage Dates and Timezones in Swift.
  • SwiftyTimer - Swifty API for NSTimer.
  • Time - Type-safe time calculations in Swift, powered by generics.
  • Timepiece - Intuitive NSDate extensions in Swift.
  • TimeZonePicker - A TimeZonePicker UIViewController similar to the iOS Settings app.
  • TrueTime - Get the true current time impervious to device clock time changes.

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.
  • Flex - An in-app debugging and exploration tool for iOS.
  • 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!
  • NetworkEye - a iOS network debug library, It can monitor HTTP requests within the App and displays information related to the request.
  • Playbook - A library for isolated developing UI components and automatically snapshots of them.
  • PonyDebugger - Remote network and data debugging for your native iOS app using Chrome Developer Tools.
  • 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.
  • Woodpecker - View sandbox files, UserDefaults, network request from Mac.
  • Wormholy - iOS network debugging, like a wizard.
  • Xniffer - A swift network profiler built on top of URLSession.

back to top

Dependency Injection

Dependency injection frameworks and libraries for decoupled, testable iOS code.

  • DITranquillity - Dependency injection framework for iOS applications written in clean Swift.
  • Needle โ€” Compile-time safe Swift dependency injection framework with real code.
  • Perform - Easy dependency injection for storyboard segues.
  • SafeDI - Compile-time safe dependency injection in Swift 6.
  • Swinject - Dependency injection framework for Swift.
  • Typhoon - Powerful dependency injection for Objective-C.
  • Weaver - A declarative, easy-to-use and safe Dependency Injection framework for Swift.

back to top

Dependency / Package Manager

Tools to manage third-party dependencies and packages in your iOS projects.

  • Accio - A SwiftPM based dependency manager for iOS & Co. with improvements over Carthage.
  • Carthage - A simple, decentralized dependency manager for Cocoa.
  • CocoaPods - CocoaPods is the dependency manager for Objective-C projects. It has thousands of libraries and can help you scale your projects elegantly.
  • Rome - A cache tool for Carthage built frameworks.
  • swift-package-manager - The Package Manager for the Swift Programming Language.
  • Xcode Maven - The Xcode Maven Plugin can be used in order to run Xcode builds embedded in a Maven lifecycle.

back to top

Deployment / Distribution

Continuous integration, delivery and distribution tools for shipping iOS apps.

  • AppCenter - Continuously build, test, release, and monitor apps for every platform.
  • Appcircle.io โ€” An enterprise-grade mobile DevOps platform that automates the build, test, and publish store of mobile apps for faster, efficient release cycle
  • AppLaunchpad - Free App Store screenshot builder.
  • Bitrise - Mobile Continuous Integration & Delivery with dozens of integrations to build, test, deploy and collaborate.
  • boarding - Instantly create a simple signup page for TestFlight beta testers.
  • buddybuild - A mobile iteration platform - build, deploy, and collaborate.
  • Codemagic - Build, test and deliver iOS apps 20% faster with Codemagic CI/CD.
  • Crashlytics - A crash reporting and beta testing service.
  • deliver - Upload screenshots, metadata and your app to the App Store using a single command.
  • fastlane - Connect all iOS deployment tools into one streamlined workflow.
  • Instabug - In-app feedback, Bug and Crash reporting, Fix Bugs Faster through user-steps, video recordings, screen annotation, network requests logging.
  • LaunchKit - A set of web-based tools for mobile app developers, now open source!
  • Rollout.io - SDK to patch, fix bugs, modify and manipulate native apps (Obj-c & Swift) in real-time.
  • 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.
  • Screenplay - Instant rollbacks and canary deployments for iOS.
  • 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.
  • snapshot - Automate taking localized screenshots of your iOS app on every device.
  • TestFlight Beta Testing - The beta testing service hosted on iTunes Connect (requires iOS 8 or later).
  • watchbuild - Get a notification once your iTunes Connect build is finished processing.

back to top

EventBus

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

  • Bolts - Bolts is a collection of low-level libraries designed to make developing mobile apps easier, including tasks (promises) and app links (deep links).
  • Bolts-Swift - Bolts is a collection of low-level libraries designed to make developing mobile apps easier.
  • FutureKit - A Swift based Future/Promises Library for iOS and macOS.
  • Hydra - Promises & Await - Write better async code in Swift.
  • Promis - The easiest Future and Promises framework in Swift. No magic. No boilerplate.
  • Promise - A Promise library for Swift, based partially on Javascript's A+ spec.
  • PromiseKit - Promises for iOS and macOS.
  • RWPromiseKit - A light-weighted Promise library for Objective-C.
  • signals-ios - Typeful eventing.
  • SwiftEventBus - A publish/subscribe event bus optimized for iOS.
  • SwiftNotificationCenter - A Protocol-Oriented NotificationCenter which is type safe, thread safe and with memory safety.
  • SwiftTask - Promise + progress + pause + cancel + retry for Swift.
  • then๐ŸŽฌ - Elegant Async code in Swift.
  • When - A lightweight implementation of Promises in Swift.

back to top

Files

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

  • AMSMB2 - Swift framework to connect SMB 2/3 shares for iOS.
  • AppFolder - AppFolder is a lightweight framework that lets you design a friendly, strongly-typed representation of a directories inside your app's container.
  • FileBrowser - Powerful Swift file browser for iOS.
  • FileKit - Simple and expressive file management in Swift.
  • 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.
  • Zip - Swift framework for zipping and unzipping files.
  • ZipArchive - ZipArchive is a simple utility class for zipping and unzipping files on iOS and Mac.
  • ZIPFoundation - Effortless ZIP Handling in Swift.
  • ZipZap - zip file I/O library for iOS, macOS and tvOS.

back to top

Functional Programming

Collection of Swift functional programming tools.

  • Argo - Functional JSON parsing library for Swift.
  • Bow - Typed Functional Programming companion library for Swift.
  • OptionalExtensions - Swift ยตframework with extensions for the Optional Type.
  • Prelude - Swift ยตframework of simple functional programming tools.
  • Runes - Infix operators for monadic functions in Swift.
  • Swiftx - Functional data types and functions for any project.
  • Swiftz - Functional programming in Swift.

back to top

Games

Game engines, frameworks and sample projects for building games on iOS.

  • 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.
  • Sage - A cross-platform chess library for Swift.
  • 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.

  • Async - Syntactic sugar in Swift for asynchronous dispatches in Grand Central Dispatch.
  • GCDKit - Grand Central Dispatch simplified with Swift.
  • GCDTimer - Well tested Grand Central Dispatch (GCD) Timer in Swift.
  • YYDispatchQueuePool - iOS utility class to manage global dispatch queue.

back to top

Gesture

Libraries and tools to handle gestures.

back to top

Graphics

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

  • AnimatedGradientView - A simple framework to add animated gradients to your iOS app.
  • Drawsana - iOS framework for building raster drawing and image markup views.
  • EZYGradientView - Create gradients and blur gradients without a single line of code.
  • jot - An iOS framework for easily adding drawings and text to images.
  • Macaw - Powerful and easy-to-use vector graphics library with SVG support 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.
  • MPWDrawingContext - An Objective-C wrapper for CoreGraphics CGContext.
  • NXDrawKit - NXDrawKit is a simple and easy but useful drawing kit for iPhone.
  • Snowflake - SVG in Swift.
  • SVGKit - Display and interact with SVG Images on iOS / macOS, using native rendering (CoreAnimation) (currently only supported for iOS - macOS code needs updating).
  • SwiftSVG - A single pass SVG parser with multiple interface options (String, NS/UIBezierPath, CAShapeLayer, and NS/UIView).
  • YYAsyncLayer - iOS utility classes for asynchronous rendering and display.

back to top

Hardware

Libraries and utilities for interacting with iOS device hardware.

Bluetooth

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

  • BabyBluetooth - The easiest way to use Bluetooth (BLE) in iOS/MacOS.
  • Bleu - BLE (Bluetooth LE) for U.
  • BlueCap - iOS Bluetooth LE framework.
  • Bluejay - A simple Swift framework for building reliable Bluetooth LE apps.
  • Bluetonium - Bluetooth mapping in Swift.
  • BluetoothKit - Easily communicate between iOS/macOS devices using BLE.
  • 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.
  • 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.
  • PeerKit An open-source Swift framework for building event-driven, zero-config Multipeer Connectivity apps.

back to top

Camera

Mocks, ImagePickers, and multiple options of customizable camera implementation

  • BarcodeScanner - Simple and beautiful barcode scanner.
  • CameraKit-iOS - Massively increase camera performance and ease of use in your next iOS project.
  • CameraManager - Simple Swift class to provide all the configurations you need to create custom camera view in your app.
  • Cool-iOS-Camera - A fully customisable and modern camera implementation for iOS made with AVFoundation.
  • ExyteMediaPicker - Customizable media picker
  • FastttCamera - Fasttt and easy camera framework for iOS with customizable filters.
  • FDTake - Easily take a photo or video or choose from library.
  • Fusuma - Instagram-like photo browser and a camera feature with a few line of code in Swift.
  • HorizonSDK-iOS - State of the art real-time video recording / photo shooting iOS library.
  • HybridCamera - Video and photo camera for iOS, similar to the SnapChat camera.
  • iOS-Depth-Sampler - A collection of code examples for Depth APIs.
  • LLSimpleCamera - A simple, customizable camera control - video recorder for iOS.
  • Lumina - Full service camera that takes photos, videos, streams frames, detects metadata, and streams CoreML predictions.
  • MijickCamera - Camera made simple. Fully customizable camera library that significantly reduces implementation time and effort. Written with and for SwiftUI.
  • NextLevel - Next Level is a media capture camera library for iOS.
  • RSBarcodes_Swift - 1D and 2D barcodes reader and generators for iOS 8 with delightful controls. Now Swift.
  • SCRecorder - Camera engine with Vine-like tap to record, animatable filters, slow motion, segments editing.
  • SwiftyCam - A Snapchat Inspired iOS Camera Framework written in Swift.
  • YPImagePicker - Instagram-like image picker & filters for iOS.

back to top

Force Touch

Quick actions and peek and pop interactions

  • PeekView - PeekView supports peek, pop and preview actions for iOS devices without 3D Touch capibility.
  • QuickActions - Swift wrapper for iOS Home Screen Quick Actions (App Icon Shortcuts).

back to top

iBeacon

Device detect libraries and iBeacon helpers

back to top

Location

Location monitoring, detect motion and geofencing libraries

  • AsyncLocationKit - Wrapper for Apple CoreLocation framework with Modern Concurrency Swift (async/await).
  • BBLocationManager - A Location Manager for easily implementing location services & geofencing in iOS.
  • LocationManager - Provides a block-based asynchronous API to request the current location, either once or continuously.
  • set-simulator-location - CLI for setting location in the iOS simulator.
  • SOMotionDetector - Simple library to detect motion. Based on location updates and acceleration.
  • SwiftLocation - Location & Beacon Monitoring in Swift.

back to top

Other Hardware

Helpers for accelerometers, gyroscopes, haptics and other device sensors.

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

back to top

Layout

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

  • Anchorage - A collection of operators and utilities that simplify iOS layout code.
  • Auto Layout Magic - Build 1 scene, let Auto Layout Magic generate the constraints for you! Scenes look great across all devices!
  • 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.
  • Cartography - A declarative Auto Layout DSL for Swift.
  • Cupcake - An easy way to create and layout UI components for iOS.
  • EasyPeasy - Auto Layout made easy.
  • Faรงade - Programmatic view layout for the rest of us - an autolayout alternative.
  • FDTemplateLayoutCell - Template auto layout cell for automatically UITableViewCell height calculating.
  • FlexLayout - FlexLayout gently wraps the highly optimized facebook/yoga flexbox implementation in a concise, intuitive & chainable syntax.
  • FLKAutoLayout - UIView category which makes it easy to create layout constraints in code.
  • Grid - The most powerful Grid container missed in SwiftUI.
  • Layout - A declarative UI framework for iOS.
  • Layoutless - Minimalistic declarative layout and styling framework built on top of Auto Layout.
  • ManualLayout - Easy to use and flexible library for manually laying out views and layers for iOS and tvOS. Supports AsyncDisplayKit.
  • Masonry - Harness the power of AutoLayout NSLayoutConstraints with a simplified, chainable and expressive syntax.
  • 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.
  • MondrianLayout - A DSL based layout builder for AutoLayout.
  • 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.
  • Neon - A powerful Swift programmatic UI layout framework.
  • PinLayout - Fast Swift Views layouting without auto layout. No magic, pure code, full control and blazing fast. Concise syntax, intuitive, readable & chainable.
  • PureLayout - The ultimate API for iOS & macOS Auto Layout โ€” impressively simple, immensely powerful. Objective-C and Swift compatible.
  • QuickLayout - QuickLayout offers a simple way, to easily manage Auto Layout in code.
  • Relayout - Swift microframework for declaring Auto Layout constraints functionally.
  • SnapKit - A Swift Autolayout DSL for iOS & macOS.
  • Stevia - Elegant view layout for iOS.
  • SwiftAutoLayout - Tiny Swift DSL for Autolayout.
  • 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.
  • SwiftBox - Flexbox in Swift, using Facebook's css-layout.
  • Swiftstraints - Auto Layout In Swift Made Easy.
  • TinyConstraints - The syntactic sugar that makes Auto Layout sweeter for human use.
  • Yalta - An intuitive and powerful Auto Layout library.
  • YogaKit - Powerful layout engine which implements Flexbox.

back to top

Localization

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

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

back to top

Logging

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

  • Atlantis - A powerful input-agnostic swift logging framework made to speed up development with maximum readability.
  • 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.
  • 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.
  • Log - A logging tool with built-in themes, formatters, and a nice API to define your owns.
  • LogDog - LogDog is a remote debugging/logging sdk (iOS and Android) with a web ui. Captures all logs and requests in real-time and allows to intercept them.
  • LxDBAnything - Automate box any value! Print log without any format control symbol! Change debug habit thoroughly!
  • NSLogger - a high performance logging utility which displays traces emitted by client applications running on macOS, iOS and Android.
  • Pulse - Pulse is a powerful logging system for Apple Platforms. Native. Built with SwiftUI.
  • QorumLogs โ€” Swift Logging Utility for Xcode & Google Docs.
  • Rainbow - Delightful console output for Swift developers.
  • SwiftTrace - Trace Swift and Objective-C method invocations.
  • SwiftyBeaver - Convenient logging during development and release.
  • SwiftyTextTable - A lightweight tool for generating text tables.
  • TinyConsole - A tiny log console to display information while using your iOS app.
  • Twitter Logging Service - Twitter Logging Service is a robust and performant logging framework for iOS clients.
  • Watchdog - Class for logging excessive blocking on the main thread.
  • Willow - Willow is a powerful, yet lightweight logging library written in Swift.
  • 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.

back to top

Machine Learning

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

  • 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.
  • Bender - Easily craft fast Neural Networks. Use TensorFlow models. Metal under the hood.
  • CoreML-Models - A collection of unique Core ML Models.
  • 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.
  • iOS-GenAI-Sampler - A collection of Generative AI examples on iOS.
  • off-grid-mobile - Run LLMs, vision models, and Stable Diffusion fully on-device. No internet, no data leaves the phone. React Native, supports iOS and Android. MIT license.
  • Swift-AI - The Swift machine learning library.
  • Swift-Brain - Artificial Intelligence/Machine Learning data structures and Swift algorithms for future iOS development. Bayes theorem, Neural Networks, and more AI.
  • SwiftCoreMLTools - A Swift library for creating and exporting CoreML Models in Swift.
  • Tensorflow-iOS - The official Google-built powerful neural network library port for iOS.
  • TensorSwift - A lightweight library to calculate tensors in Swift, which has similar APIs to TensorFlow's.

back to top

Maps

Map SDKs, geolocation utilities, clustering tools and route renderers.

  • Cluster - Easy Map Annotation Clustering.
  • 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.
  • GEOSwift - The Swift Geographic Engine.
  • PXGoogleDirections - Google Directions API helper for iOS, written in Swift.
  • 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.

  • BigInt - Arbitrary-precision arithmetic in pure Swift.
  • Expression - A Mac and iOS library for evaluating numeric expressions at runtime.
  • iosMath - A library for displaying beautifully rendered math equations. Enables typesetting LaTeX math formulae in iOS.
  • Matft - Matft is Numpy-like library in Swift. Matft allows us to handle n-dimensional array easily in Swift.
  • Metron - Metron is a comprehensive collection of geometric functions and types that extend the 2D geometric primitives provided by CoreGraphics.
  • SigmaSwiftStatistics - A collection of functions for statistical calculation.
  • Upsurge - Swift math.
  • 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.

back to top

Media

Libraries for handling audio, images, GIFs, video and other media formats.

Audio

Audio playback, recording, effects and sound processing libraries.

  • AudioBus - Add Next Generation Live App-to-App Audio Routing.
  • AudioKit - A powerful toolkit for synthesizing, processing, and analyzing sounds.
  • AudioPlayer - AudioPlayer is syntax and feature sugar over AVPlayer. It plays your audio files (local & remote).
  • AudioPlayerSwift - AudioPlayer is a simple class for playing audio in iOS, macOS and tvOS apps.
  • Beethoven - An audio processing Swift library for pitch detection of musical signals.
  • Cephalopod - A sound fader for AVAudioPlayer written in Swift.
  • Chirp - The easiest way to prepare, play, and remove sounds in your Swift app!
  • ESTMusicIndicator - Cool Animated music indicator view written in Swift.
  • EZAudio - An iOS/macOS audio visualization framework built upon Core Audio useful for anyone doing real-time, low-latency audio processing and visualizations.
  • FDSoundActivatedRecorder - Start recording when the user speaks.
  • FDWaveformView - An easy way to display an audio waveform in your app, including animation.
  • FluidAudio - Swift framework for local speech recognition, speaker diarization, voice activity detection, and text-to-speech using Core ML.
  • InteractivePlayerView - Custom iOS music player view.
  • IQAudioRecorderController - A drop-in universal library allows to record audio within the app with a nice User Interface.
  • 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.
  • MusicKit - A framework for composing and transforming music in Swift.
  • novocaine - Painless high-performance audio on iOS and macOS.
  • NVDSP - iOS/macOS DSP for audio (with Novocaine).
  • PandoraPlayer - A lightweight music player for iOS, based on AudioKit.
  • Porcupine - On-device wake word detection engine for macOS, iOS, and watchOS, powered by deep learning.
  • QuietModemKit - iOS framework for the Quiet Modem (data over sound).
  • SubtleVolume - Replace the system volume popup with a more subtle indicator.
  • 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.
  • TheAmazingAudioEngine2 - The Amazing Audio Engine is a sophisticated framework for iOS audio applications, built so you don't have to.
  • Voice Overlay - An overlay that gets your userโ€™s voice permission and input as text in a customizable UI. back to top

GIF

Libraries for creating, displaying and sharing animated GIFs.

  • AImage - A animated GIF&APNG engine for iOS in Swift with low memory & cpu usage.Optimized for Multi-Image case.
  • APNGKit - High performance and delightful way to play with APNG format in iOS.
  • FLAnimatedImage - Performant animated GIF engine for iOS.
  • gifu - Highly performant animated GIF support for iOS in Swift.
  • SwiftyGif - High performance GIF engine.
  • YLGIFImage - Async GIF image decoder and Image viewer supporting play GIF images. It just use very less memory.
  • YYImage - Image framework for iOS to display/encode/decode animated WebP, APNG, GIF, and more.

back to top

Image

Image loading, caching, editing, filtering and display helpers.

  • Agrume - A lemony fresh iOS image viewer written in Swift.
  • AlamofireImage - An image component library for Alamofire.
  • APKenBurnsView - Ken Burns effect with face recognition!
  • APKenBurnsView - Ken Burns effect with face recognition!
  • AsyncImageView - Simple extension of UIImageView for loading and displaying images asynchronously without lock up the UI.
  • ATGMediaBrowser - Image slide-show viewer with multiple predefined transition styles, and ability to create new transitions with ease.
  • ATGMediaBrowser - Image slide-show viewer with multiple predefined transition styles, and ability to create new transitions with ease.
  • AXPhotoViewer - An iPhone/iPad photo gallery viewer, useful for viewing a large (or small!) number of photos
  • AXPhotoViewer - An iPhone/iPad photo gallery viewer, useful for viewing a large (or small!) number of photos
  • ComplimentaryGradientView - Create complementary gradients generated from dominant and prominent colors in supplied image. Inspired by Grade.js.
  • ComplimentaryGradientView - Create complementary gradients generated from dominant and prominent colors in supplied image. Inspired by Grade.js.
  • Concorde - Download and decode progressive JPEGs.
  • CTPanoramaView - Displays spherical or cylindrical panoramas or 360-photos with touch or motion based control options.
  • CTPanoramaView - Displays spherical or cylindrical panoramas or 360-photos with touch or motion based control options.
  • DTPhotoViewerController - A fully customizable photo viewer ViewController, inspired by Facebook photo viewer.
  • DTPhotoViewerController - A fully customizable photo viewer ViewController, inspired by Facebook photo viewer.
  • EBPhotoPages - A photo gallery for iOS with a modern feature set. Similar features as the Facebook photo browser.
  • FastImageCache - iOS library for quickly displaying images while scrolling.
  • FlagKit - Beautiful flag icons for usage in apps and on the web.
  • FlexibleImage - A simple way to play with image!
  • FlexibleImage - A simple way to play with image!
  • Gallery - Your next favorite image and video picker.
  • Gallery - Your next favorite image and video picker.
  • GPU Image - An open source iOS framework for GPU-based image and video processing.
  • GPUImage2 - GPUImage 2 is a BSD-licensed Swift framework for GPU-accelerated video and image processing.
  • GPUImage2 - GPUImage 2 is a BSD-licensed Swift framework for GPU-accelerated video and image processing.
  • GPUImage3 - GPUImage 3 is a BSD-licensed Swift framework for GPU-accelerated video and image processing using Metal.
  • GPUImage3 - GPUImage 3 is a BSD-licensed Swift framework for GPU-accelerated video and image processing using Metal.
  • greedo-layout-for-ios - Full aspect ratio grid layout for iOS.
  • greedo-layout-for-ios - Full aspect ratio grid layout for iOS.
  • Harbeth - Metal API for GPU accelerated Graphics and Video and Camera filter framework.๐Ÿ”ฅ๐Ÿ’ฅ
  • Harbeth - Metal API for GPU accelerated Graphics and Video and Camera filter framework.๐Ÿ”ฅ๐Ÿ’ฅ
  • IDMPhotoBrowser - Photo Browser / Viewer.
  • ImageButter - Makes dealing with images buttery smooth.
  • ImageButter - Makes dealing with images buttery smooth.
  • ImageDetect - Detect and crop faces, barcodes and texts inside of your image, with iOS 11 Vision api.
  • ImageDetect - Detect and crop faces, barcodes and texts inside of your image, with iOS 11 Vision api.
  • ImageLoaderSwift - A lightweight and fast image loader for iOS written in Swift.
  • ImagePickerSheetController - ImagePickerSheetController is like the custom photo action sheet in iMessage just without the glitches.
  • ImagePickerSheetController - ImagePickerSheetController is like the custom photo action sheet in iMessage just without the glitches.
  • ImageScout - A Swift implementation of fastimage. Supports PNG, GIF, and JPEG.
  • ImageSlideshow - Swift image slideshow with circular scrolling, timer and full screen viewer.
  • ImageSlideshow - Swift image slideshow with circular scrolling, timer and full screen viewer.
  • ImageViewer - An image viewer ร  la Twitter.
  • ImageViewer - An image viewer ร  la Twitter.
  • Imaginary - Remote images, as easy as one, two, three.
  • Imaginary - Remote images, as easy as one, two, three.
  • InitialsImageView - An UIImageView extension that generates letter initials as a placeholder for user profile images, with a randomized background color.
  • InitialsImageView - An UIImageView extension that generates letter initials as a placeholder for user profile images, with a randomized background color.
  • JMCMarchingAnts - Library that lets you add marching ants (animated) selection to the edges of the images.
  • LetterAvatarKit - A UIImage extension that generates letter-based avatars written in Swift.
  • Lightbox - A convenient and easy to use image viewer for your iOS app.
  • 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.
  • Moa - An image download extension of the image view for iOS, tvOS and macOS.
  • OnlyPictures - A simple and flexible way to add source of overlapping circular pictures.
  • Paparazzo - Custom iOS camera and photo picker with editing capabilities.
  • PhotoEditorSDK - A fully customizable photo editor for your app.
  • Pixel - An image editor and engine using CoreImage.
  • SFSafeSymbols - Safely access Apple's SF Symbols using static typing.
  • ShadowImageView - ShadowImageView is a iOS 10 Apple Music style image view, help you create elegent image with shadow.
  • Sharaku - Instagram-like image filter ViewController.
  • ShinpuruImage - Syntactic Sugar for Accelerate/vImage and Core Image Filters.
  • SimpleImageViewer - A snappy image viewer with zoom and interactive dismissal transition.
  • SKPhotoBrowser - Simple PhotoBrowser/Viewer inspired by Facebook, Twitter photo browsers written by swift.
  • StyleArt - Style Art library process images using COREML with a set of pre trained machine learning models and convert them to Art style.
  • SwiftyAvatar - A UiimageView class for creating circular avatar images, IBDesignable to make all changes via storyboard.
  • TGLParallaxCarousel - A lightweight 3D Linear Carousel with parallax effect.
  • TinyCrayon - A smart and easy-to-use image masking and cutout SDK for mobile apps.
  • TLPhotoPicker - Multiple phassets picker for iOS lib. like a facebook.
  • Twitter Image Pipline - streamlined framework for fetching and storing images in an application.
  • YUCIHighPassSkinSmoothing - An implementation of High Pass Skin Smoothing using Apple's Core Image Framework.
  • ZImageCropper - A Swift project to crop image in any shape.

back to top

Media Processing

Media conversion, transcoding and processing utilities.

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

back to top

PDF

Libraries for creating, rendering and manipulating PDF documents on iOS.

  • FastPdfKit - A Static Library to be embedded on iOS applications to display pdf documents derived from Fast PDF.
  • PDFGenerator - A simple Generator of PDF in Swift. Generate PDF from view(s) or image(s).
  • PSPDFKit - Render PDF, add/edit annotations, fill forms, add/edit pages, view/create digital signatures.
  • SimplePDF - Create a simple PDF effortlessly.
  • TPPDF - Generate PDF using commands and automatic layout.

back to top

Streaming

Live and on-demand media streaming frameworks for iOS apps.

  • Airstream - A framework for streaming audio between Apple devices using AirPlay.
  • HaishinKit.swift - Camera and Microphone streaming library via RTMP, HLS for iOS, macOS.
  • LFLiveKit - H264 and AAC Hard coding๏ผŒsupport GPUImage Beauty๏ผŒ rtmp transmission๏ผŒweak network lost frame๏ผŒDynamic switching rate.
  • StreamingKit - A fast and extensible gapless AudioPlayer/AudioStreamer for macOS and iOS.

back to top

Video

Video players, editors and utilities for iOS video workflows.

  • AVAnimator - An open source iOS native library that makes it easy to implement non-trivial video/audio enabled apps.
  • 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.
  • 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.
  • ios-360-videos - NYT360Video plays 360-degree video streamed from an AVPlayer.
  • MHVideoPhotoGallery - A Photo and Video Gallery.
  • MobilePlayer - A powerful and completely customizable media player for iOS.
  • 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.
  • Periscope VideoViewController - Video view controller with Periscope fast rewind control.
  • Player - video player in Swift, simple way to play and stream media in your iOS or tvOS app.
  • PlayerView - Player View is a delegated view using AVPlayer of Swift.
  • PryntTrimmerView - A set of UI elements to trim, crop and select frames inside a video.
  • swift-360-videos - Pure swift (no SceneKit) 3D library with focus on video and 360.
  • Swift-YouTube-Player - Swift library for embedding and controlling YouTube videos in your iOS applications!
  • VersaPlayer - Versatile AVPlayer implementation for iOS, macOS, and tvOS.
  • VLC for iOS - VLC is a free and open source multimedia player for iOS.
  • XCDYouTubeKit - YouTube video player for iOS, tvOS and macOS.
  • YoutubeKit - A video player that fully supports Youtube IFrame API and YoutubeDataAPI for easily create a Youtube app.
  • 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.

back to top

Messaging

Chat UIs, real-time messaging SDKs and in-app messaging tools.

Also see push notifications

  • AsyncMessagesViewController - A smooth, responsive and flexible messages UI library for iOS.
  • chat-sdk-ios - Chat SDK iOS - Open Source Mobile Messenger.
  • 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.
  • Chatto - A lightweight framework to build chat applications, made in Swift.
  • ExyteChat - SwiftUI Chat UI framework with fully customizable message cells, input view, and a built-in media picker.
  • MessageKit - Eventually, a Swift re-write of JSQMessagesViewController.
  • MessageViewController - A SlackTextViewController replacement written in Swift for the iPhone X.
  • Messenger Chat with Firebase - Swift messaging chat app with Firebase Firestore integration.
  • XMPPFramework - An XMPP Framework in Objective-C for Mac and iOS.

back to top

Networking

HTTP clients, socket libraries, reachability helpers and networking utilities.

  • AFNetworking+RetryPolicy - An objective-c category that adds the ability to set the retry logic for requests made with AFNetworking.
  • AFNetworking-Synchronous - Synchronous requests for AFNetworking 1.x, 2.x, and 3.x.
  • Alamofire - Alamofire is an HTTP networking library written in Swift, from the creator of AFNetworking.
  • APIKit - A networking library for building type safe web API client in Swift.
  • ASIHTTPRequest - Easy to use CFNetwork wrapper for HTTP requests, Objective-C, macOS and iPhone.
  • Bamboots - Bamboots is a network request framework based on Alamofire, aiming at making network request easier for business development.
  • CocoaAsyncSocket - Asynchronous socket networking library for Mac and iOS.
  • EFInternetIndicator - A little swift Internet error status indicator using ReachabilitySwift.
  • EVCloudKitDao - Simplified access to Apple's CloudKit.
  • EVURLCache - a NSURLCache subclass for handling all web requests that use NSURLRequest.
  • FGRoute - An easy-to-use library that helps developers to get wifi ssid, router and device ip addresses.
  • FSNetworking - Foursquare iOS networking library.
  • Get - A modern Swift web API client built using async/await.
  • HappyDns - A Dns library, support custom dns server, dnspod httpdns. Only support A record.
  • MMLanScan - An iOS LAN Network Scanner library.
  • MonkeyKing - MonkeyKing helps you post messages to Chinese Social Networks.
  • Moya - Network abstraction layer written in Swift.
  • Netdiag - A network diagnosis library. Support Ping/TcpPing/Rtmp/TraceRoute/DNS/external IP/external DNS.
  • Networking - Simple HTTP Networking in Swift a NSURLSession wrapper with image caching support.
  • Overcoat - Small but powerful library that makes creating REST clients simple and fun.
  • Pitaya - A Swift HTTP / HTTPS networking library just incidentally execute on machines.
  • Reachability.swift - Replacement for Apple's Reachability re-written in Swift with closures.
  • Reactor - Powering your RAC architecture.
  • RealReachability - We need to observe the REAL reachability of network. That's what RealReachability do.
  • ResponseDetective - Sherlock Holmes of the networking layer.
  • RestKit - RestKit is an Objective-C framework for iOS that aims to make interacting with RESTful web services simple, fast and fun.
  • Siesta - Elegant abstraction for RESTful resources that untangles stateful messes. An alternative to callback- and delegate-based networking.
  • SOAPEngine - This generic SOAP client allows you to access web services using a your iOS app, macOS app and AppleTV app.
  • SolarNetwork - Elegant network abstraction layer in Swift.
  • SwiftHTTP - Thin wrapper around NSURLSession in swift. Simplifies HTTP requests.
  • Swish - Nothing but Net(working).
  • TermiNetwork - A networking library written with Swift 4.0 that supports multi-environment configuration, routing and automatic deserialization.
  • Tiercel - Pure Swift iOS download framework with background downloads, relaunch recovery, resumable transfers, and task management.
  • Transporter - A tiny library makes uploading and downloading easier.
  • TRON - Lightweight network abstraction layer, written on top of Alamofire.
  • TWRDownloadManager - A modern download manager based on NSURLSession to deal with asynchronous downloading, management and persistence of multiple files.
  • ws โ˜๏ธ - Elegant JSON WebService in Swift.
  • XMNetworking - A lightweight but powerful network library with simplified and expressive syntax based on AFNetworking.
  • YTKNetwork - YTKNetwork is a high level request util based on AFNetworking.

back to top

Newsletters

Curated newsletters to keep up with the latest iOS and Swift news.

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

back to top

Notifications

Local notifications, push services and notification UI tools.

Push Notifications

Libraries and helpers for handling push notifications on iOS.

  • Knuff - The debug application for Apple Push Notification Service (APNS).
  • NWPusher - macOS and iOS application and framework to play with the Apple Push Notification service (APNs).
  • PEM - Automatically generate and renew your push notification profiles.
  • SimulatorRemoteNotifications - Library to send mock remote notifications to the iOS simulator.

back to top

Push Notification Providers

Third-party services for sending push notifications to iOS devices.

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

Profiling tools and techniques to squeeze performance out of iOS apps.

  • 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

Parsers and serializers for common data formats.

CSV

Libraries for reading and writing CSV files in Swift and Objective-C.

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

back to top

JSON

JSON parsing, mapping and serialization libraries.

  • AlamofireObjectMapper - An Alamofire extension which converts JSON response data into swift objects using ObjectMapper.
  • Arrow ๐Ÿน - Elegant JSON Parsing in Swift.
  • Elevate - Elevate is a JSON parsing framework that leverages Swift to make parsing simple, reliable and composable.
  • FastEasyMapping - Serialize & deserialize JSON fast.
  • FlatBuffersSwift - This project brings FlatBuffers (an efficient cross platform serialization library) to Swift.
  • Groot - Convert JSON dictionaries and arrays to and from Core Data managed objects.
  • HandyJSON - A handy swift JSON-object serialization/deserialization library for Swift.
  • Himotoki - A type-safe JSON decoding library purely written in Swift.
  • JASON - JSON parsing with outstanding performances and convenient operators.
  • JAYSON - Strict and Scalable JSON library.
  • jsoncafe.com - Online Template driven Model Class Generator from JSON.
  • 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.
  • JSONModel - Magical Data Modeling Framework for JSON. Create rapidly powerful, atomic and smart data model classes.
  • Mantle - Model framework for Cocoa and Cocoa Touch.
  • Marshal - Marshaling the typeless wild west of [String: Any] (Protocol based).
  • 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.
  • ObjectMapper - A framework written in Swift that makes it easy for you to convert your Model objects (Classes and Structs) to and from JSON.
  • PMHTTP - Swift/Obj-C HTTP framework with a focus on REST and JSON.
  • PMJSON - Pure Swift JSON encoding/decoding library.
  • PropertyMapper - Data mapping and validation with minimal amount of code.
  • SBJson - This framework implements a strict JSON parser and generator in Objective-C.
  • SwiftyJSON - The better way to deal with JSON data in Swift.
  • SwiftyJSONAccelerator - Generate Swift 5 model files from JSON with Codeable support.

back to top

XML & HTML

XML and HTML parsers, selectors and serializers.

  • AEXML - Simple and lightweight XML parser written in Swift.
  • Fuzi - A fast & lightweight XML & HTML parser in Swift with XPath & CSS support.
  • HTMLKit - An Objective-C framework for your everyday HTML needs.
  • Kanna - Kanna(้‰‹) is an XML/HTML parser for macOS/iOS.
  • Ono - A sensible way to deal with XML & HTML for iOS & macOS.
  • SwiftyXML - The most swifty way to deal with XML data in swift 4.
  • SwiftyXMLParser - Simple XML Parser implemented in Swift.
  • SWXMLHash - Simple XML parsing in Swift.
  • 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

Parsers for additional formats like YAML, INI and Markdown.

  • CoreXLSX - Excel spreadsheet (XLSX) format support in pure Swift.
  • CreateAPI - Delightful code generation for OpenAPI specs for Swift 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.
  • FeedKit - An RSS and Atom feed parser written in Swift.
  • NetNewsWire - Itโ€™s a free and open-source feed reader for macOS and iOS.
  • SVGView - SVG parser and renderer written in SwiftUI.
  • SwiftCssParser - A Powerful , Extensible CSS Parser written in pure Swift.
  • URLEmbeddedView - Automatically caches the object that is confirmed the Open Graph Protocol, and displays it as URL embedded card.
  • URLPreview - An NSURL extension for showing preview info of webpages.
  • 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.

back to top

Passbook

Libraries for creating and managing Apple Wallet passes.

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

back to top

Payments

In-app purchase, subscription and payment gateway helpers.

  • Braintree - Free payment processing on your first $50k. Requires Backend.
  • Caishen - A Payment Card UI & Validator for iOS.
  • CreditCardForm-iOS - CreditCardForm is iOS framework that allows developers to create the UI which replicates an actual Credit Card.
  • FramesIos - Payment Form UI and Utilities in Swift.
  • iCard - Bank Card Generator with Swift using SnapKit DSL.
  • merchantkit - A modern In-App Purchases management framework for iOS.
  • MFCard - Easily integrate Credit Card payments in iOS App / Customisable Card UI.
  • Moltin - Add eCommerce to your app with a simple SDK, so you can create a store and sell physical products, no backend required.
  • monza - Ruby Gem for Rails - Easy iTunes In-App Purchase Receipt validation, including auto-renewable subscriptions.
  • PatronKit - A framework to add patronage to your apps.
  • RMStore - A lightweight iOS library for In-App Purchases.
  • Stripe - Payment integration on your app with ๏ฃฟPAY. Suitable for people with low knowledge on Backend.
  • SwiftyStoreKit - Lightweight In App Purchases Swift framework for iOS 8.0+ and macOS 9.0+
  • TPInAppReceipt - Reading and Validating In App Store Receipt.

back to top

Permissions

Unified APIs and UIs for requesting and managing iOS user permissions.

  • ClusterPrePermissions - Reusable pre-permissions utility that lets developers ask users for access in their own dialog, before making the system-based request.
  • ISHPermissionKit - A unified way for iOS apps to request user permissions.
  • PAPermissions - A unified API to ask for permissions on iOS.
  • Permission - A unified API to ask for permissions on iOS.
  • Proposer - Make permission request easier (Supports Camera, Photos, Microphone, Contacts, Location).
  • SPPermissions - Ask permissions on Swift. Available List, Dialog & Native interface. Can check state permission.

back to top

Podcasts

Podcasts worth following to keep learning about iOS and Swift.

back to top

Project setup

Project generators, templates and scaffolding tools for new iOS apps.

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

back to top

Prototyping

Tools for rapidly prototyping iOS app ideas and UI flows.

back to top

Rapid Development

Frameworks and tools designed to accelerate day-to-day iOS development.

  • Playgrounds - Playgrounds for Objective-C for extremely fast prototyping / learning.
  • STV Framework - Native visual iOS development.

back to top

Reactive Programming

Reactive and functional reactive libraries for Swift and Objective-C.

  • CwlSignal A Swift framework for reactive programming.
  • Hanson - Lightweight observations and bindings in Swift, with support for KVO and NotificationCenter.
  • JASONETTE-iOS - Native App over HTTP. Create your own native iOS app with nothing but JSON.
  • LightweightObservable - A lightweight implementation of an observable sequence that you can subscribe to.
  • NSObject-Rx - Handy RxSwift extensions on NSObject, including rx_disposeBag.
  • Observable - The easiest way to observe values in Swift.
  • OneWay - A Swift library for state management with unidirectional data flow.
  • OpenCombine โ€” Open source implementation of Apple's Combine framework for processing values over time.
  • ReactiveCocoa - Streams of values over time.
  • ReactiveCoreData - ReactiveCoreData (RCD) is an attempt to bring Core Data into the ReactiveCocoa (RAC) world.
  • ReactiveKit - ReactiveKit is a collection of Swift frameworks for reactive and functional reactive programming.
  • ReactiveSwift - Streams of values over time by ReactiveCocoa group.
  • ReactiveTask - Flexible, stream-based abstraction for launching processes.
  • Reactor - Unidirectional Data Flow using idiomatic Swiftโ€”inspired by Elm and Redux.
  • ReSwift - Unidirectional Data Flow in Swift - Inspired by Redux.
  • RxAlamofire - RxSwift wrapper around the elegant HTTP networking in Swift Alamofire.
  • RxAnimated - Animated RxCocoa bindings.
  • RxBluetoothKit - iOS & macOS Bluetooth library for RxSwift.
  • RxCoordinator - Powerful navigation library for iOS based on the coordinator pattern.
  • RxCoreData - RxSwift extensions for Core Data.
  • RxGesture - RxSwift reactive wrapper for view gestures.
  • RxKeyboard - Reactive Keyboard in iOS.
  • RxMediaPicker - A reactive wrapper built around UIImagePickerController.
  • RxRealm - Rx wrapper for Realm's collection types.
  • RxSwift - Reactive Programming in Swift.
  • Verge - Verge is a faster and scalable state management library for UIKit and SwiftUI
  • VueFlux - Unidirectional Data Flow State Management Architecture for Swift - Inspired by Vuex and Flux.

back to top

React-Like

React-inspired UI libraries for building declarative iOS interfaces.

  • Render - Swift and UIKit a la React.

back to top

Reference

Cheat sheets, curated documentation and reference material for iOS developers.

  • Awesome-ios - A curated list of awesome iOS ecosystem.
  • Objective-C Cheat Sheet - A quick reference cheat sheet for common, high level topics in Objective-C.
  • Swift Cheat Sheet - A quick reference cheat sheet for common, high level topics in Swift.
  • SwiftSnippets - A collection of Swift snippets to be used in Xcode.
  • WWDC-Recap - A collection of session summaries in markdown format, from WWDC 19 & 17.

back to top

Reflection

Runtime reflection, mirroring and introspection helpers.

  • 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.
  • Reflect - Reflection, Dict2Model, Model2Dict, Archive.
  • Reflection - Reflection provides an API for advanced reflection at runtime including dynamic construction of types.
  • Runtime - A Swift Runtime library for viewing type info, and the dynamic getting and setting of properties.
  • SwiftKVC - Key-Value Coding (KVC) for native Swift classes and structs.

back to top

Regex

Regular expression libraries and DSLs for Swift and Objective-C.

  • PySwiftyRegex - Easily deal with Regex in Swift in a Pythonic way.
  • Regex - A Swift ยตframework providing an NSRegularExpression-backed Regex type.
  • Regex - Regular expressions for swift.
  • SwiftRegex - Perl-like Regex =~ operator for Swift.

back to top

SDK

Official and third-party SDKs for integrating external services into iOS apps.

Official

Officially supported SDKs from platform vendors.

  • Adapty - Integrate in-app subscriptions and a/b testing for them with 3 lines of code.
  • algoliasearch-client-swift - Algolia Search API Client for Swift.
  • Apphud - A complete solution to integrate auto-renewable subscriptions and regular in-app purchases in 30 minutes with no server code required.
  • AWS Amazon Web Services Mobile SDK for iOS.
  • Box iOS + macOS SDK for the Box API.
  • CareKit - CareKit is an open source software framework for creating apps that help people better understand and manage their health. By Apple.
  • Dropbox SDKs for Drop-ins and Dropbox Core API.
  • Evernote Evernote SDK for iOS.
  • Facebook Facebook iOS SDK.
  • Firebase Mobile (and web) application development platform.
  • Google Analytics Google Analytics SDK for iOS.
  • 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.
  • ResearchKit ResearchKit is an open source software framework that makes it easy to create apps for medical research or for other research projects.
  • rides-ios-sdk - Uber Rides iOS SDK (beta).
  • Shopify - Shopifyโ€™s Mobile Buy SDK makes it simple to sell physical products inside your mobile app.
  • Spotify Spotify iOS SDK.
  • Stripe Stripe bindings for iOS and macOS.
  • Tumblr Library for easily integrating Tumblr data into your iOS or macOS application.
  • Venmo

back to top

Unofficial

Community-maintained SDKs and client libraries for popular services.

  • das-quadrat - A Swift wrapper for Foursquare API. iOS and macOS.
  • Easy Social - Twitter & Facebook Integration.
  • FHSTwitterEngine Twitter API for Cocoa developers.
  • ForecastIO - A Swift library for the Forecast.io Dark Sky API.
  • InstagramKit - Instagram iOS SDK.
  • objectiveflickr - ObjectiveFlickr, a Flickr API framework for Objective-C.
  • PokemonKit - Pokeapi wrapper, written in Swift.
  • Spartan - An Elegant Spotify Web API Library Written in Swift for iOS and macOS.
  • STTwitter A stable, mature and comprehensive Objective-C library for Twitter REST API 1.1.
  • Swifter - ๐Ÿฆ A Twitter framework for iOS & macOS written in Swift.
  • Swiftly Salesforce - An easy-to-use framework for building iOS apps that integrate with Salesforce, using Swift and promises.
  • SwiftyVK Library for easy interact with VK social network API written in Swift.
  • UnsplashKit - Swift client for Unsplash.
  • waterwheel.swift - The Waterwheel Swift SDK provides classes to natively connect iOS, macOS, tvOS, and watchOS applications to Drupal 7 and 8.

back to top

Security

Tools and libraries for securing iOS apps, data and user credentials.

  • BiometricAuthentication - Use Apple FaceID or TouchID authentication in your app using BiometricAuthentication.
  • cocoapods-keys - A key value store for storing environment and application keys.
  • LTHPasscodeViewController - An iOS passcode lockscreen replica (from Settings), with TouchID and simple (variable length) / complex support.
  • SecurePropertyStorage - Helps you define secure storages for your properties using Swift property wrappers.
  • simple-touch - Very simple swift wrapper for Biometric Authentication Services (Touch ID) on iOS.
  • Smile-Lock - A library for make a beautiful Passcode Lock View.
  • SwiftPasscodeLock - An iOS passcode lock with TouchID authentication written in Swift.
  • TOPasscodeViewController - A modal passcode input and validation view controller for iOS.
  • zxcvbn-ios - A realistic password strength estimator.

back to top

Encryption

Cryptography libraries for encryption, hashing and digital signatures.

  • Arcane - Lightweight wrapper around CommonCrypto in Swift.
  • CryptoSwift - Crypto related functions and helpers for Swift implemented in Swift programming language.
  • IDZSwiftCommonCrypto - A wrapper for Apple's Common Crypto library written in Swift.
  • JOSESwift - A framework for the JOSE standards JWS, JWE, and JWK written in Swift.
  • Obfuscator-iOS - Secure your app by obfuscating all the hard-coded security-sensitive strings.
  • RNCryptor - CCCryptor (AES encryption) wrappers for iOS and Mac in Swift. -- For ObjC, see RNCryptor/RNCryptor-objc.
  • SipHash - Simple and secure hashing in Swift with the SipHash algorithm.
  • SwCrypt - RSA public/private key generation, RSA, AES encryption/decryption, RSA sign/verify in Swift with CommonCrypto in iOS and macOS.
  • swift-sodium - Safe and easy to use crypto for iOS.
  • SwiftHash - Hash in Swift.
  • SwiftyRSA - RSA public/private key 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.

back to top

Keychain

Keychain wrappers for safely storing secrets and credentials on iOS.

  • KeychainAccess - Simple Swift wrapper for Keychain that works on iOS and macOS.
  • Lockbox - Objective-C utility class for storing data securely in the key chain.
  • Locksmith - A powerful, protocol-oriented library for working with the keychain in Swift.
  • 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.

back to top

Server

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

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

back to top

Style Guides

Community style guides for writing clean Swift and Objective-C code.

back to top

Testing

Unit testing, UI testing, mocking and behavior-driven development tools.

TDD / BDD

Frameworks for test-driven and behavior-driven iOS development.

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

back to top

A/B Testing

Libraries and platforms for experimenting and running A/B tests in iOS apps.

  • ABKit - AB testing framework for iOS.
  • 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.

back to top

UI Testing

Tools for automating interaction-based tests against iOS user interfaces.

  • appium - Appium is an open source test automation framework for use with native and hybrid mobile apps.
  • AutoMate - XCTest extensions for writing UI automation tests.
  • Bluepill - Bluepill is a reliable iOS testing tool that runs UI tests using multiple simulators on a single machine.
  • Cucumber - Behavior driver development for iOS.
  • EarlGrey - ๐Ÿต iOS UI Automation Test Framework.
  • 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.
  • ios-driver - Test any iOS native, hybrid, or mobile web application using Selenium / WebDriver.
  • Kif - An iOS Functional Testing Framework.
  • LayoutTest-iOS - Write unit tests which test the layout of a view in multiple configurations.
  • Marathon Runner - Fast, platform-independent test runner focused on performance and stability execute tests.
  • robotframework-appiumlibrary - AppiumLibrary is an appium testing library for RobotFramework.
  • Subliminal - An understated approach to iOS integration testing.
  • UI Testing Cheat Sheet - How do I test this with UI Testing?
  • ViewInspector - Runtime inspection and unit testing of SwiftUI views

back to top

Other Testing

Snapshot testing, mocking, fuzzing and other testing utilities.

  • 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.
  • Cuckoo - First boilerplate-free mocking framework for Swift.
  • DVR - Network testing for Swift.
  • ETTrace - Locally measure performance of your app, without Xcode or Instruments.
  • Fakery - Swift fake data generator.
  • iOS Snapshot Test Case โ€” Snapshot test your UIViews and CALayers on iOS and tvOS.
  • Kakapo - Dynamically Mock server behaviors and responses in Swift.
  • MirrorDiffKit - Pretty diff between any structs or classes.
  • 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.
  • Mockingjay - An elegant library for stubbing HTTP requests with ease in Swift.
  • Mockit - A simple mocking framework for Swift, inspired by the famous Mockito for Java.
  • OCMock - Mock objects for Objective-C.
  • second_curtain - Upload failing iOS snapshot tests cases to S3.
  • SnapshotTesting - Delightful Swift snapshot testing.
  • trainer - Convert xcodebuild plist files to JUnit reports.
  • Vinyl - Network testing ร  la VCR in Swift.

back to top

Text

Attributed strings, markdown, syntax highlighting and rich text helpers.

  • Atributika - Easily build NSAttributedString by detecting and styling HTML-like tags, hashtags, mentions, RegExp or NSDataDetector patterns.
  • Attributed - Modern Swift ยตframework for attributed strings.
  • AttributedTextView - Easiest way to create an attributed UITextView with support for multiple links (including hashtags and mentions).
  • 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.
  • BonMot - Beautiful, easy attributed strings in Swift.
  • CocoaMarkdown - Markdown parsing and rendering for iOS and macOS.
  • CodeMirror Swift - A lightweight wrapper of CodeMirror for macOS and iOS. Support Syntax Highlighting & Themes.
  • Croc - A lightweight Swift library for Emoji parsing and querying.
  • Down - Blazing fast Markdown rendering in Swift, built upon cmark.
  • DTCoreText - Methods to allow using HTML code with CoreText.
  • DTRichTextEditor - A rich-text editor for iOS.
  • Emojica - Replace standard emoji in strings with a custom emoji set, such as Twemoji or EmojiOne.
  • Format - A Swift Formatter Kit.
  • Heimdall - Heimdall is a wrapper around the Security framework for simple encryption/decryption operations.
  • Highlighter - Highlight whatever you want! Highlighter will magically find UI objects such as UILabel, UITextView, UITexTfield, UIButton in your UITableViewCell or other Class.
  • Highlightr - An iOS & macOS syntax highlighter, supports 176 languages and comes with 79 styles.
  • Input Mask - Pattern-based user input formatter, parser and validator for iOS.
  • libPhoneNumber-iOS - iOS port from libphonenumber (Google's phone number handling library).
  • MarkdownDisplayView - A powerful iOS Markdown rendering component built on TextKit 2, providing smooth rendering performance and rich customization options. It also enables the streaming rendering of Markdown format in AI question-and-answer scenarios.
  • MarkdownKit - A simple and customizable Markdown Parser for Swift.
  • MarkdownTextView - Rich Markdown editing control for iOS.
  • MarkdownView - Markdown View for iOS.
  • Marklight - Markdown syntax highlighter for iOS.
  • Marky Mark - Highly customizable Markdown parsing and native rendering in Swift.
  • MMMarkdown - An Objective-C static library for converting Markdown to HTML.
  • Mustard - Mustard is a Swift library for tokenizing strings when splitting by whitespace doesn't cut it.
  • Notepad - A fully themeable markdown editor with live syntax highlighting.
  • NSStringEmojize - A category on NSString to convert Emoji Cheat Sheet codes to their equivalent Unicode characters.
  • PhoneNumberKit - A Swift framework for parsing, formatting and validating international phone numbers. Inspired by Google's libphonenumber.
  • Pluralize.swift - Great Swift String Pluralize Extension.
  • Smile Emoji in Swift.
  • Sprinter - A library for formatting strings on iOS and macOS.
  • SwiftRichString - Elegant & Painless Attributed Strings Management Library in Swift.
  • SwiftString - A comprehensive, lightweight string extension for Swift.
  • SwiftyAttributes - Swift extensions that make it a breeze to work with attributed strings.
  • SwiftyMarkdown - Converts Markdown files and strings into NSAttributedString.
  • SZMentionsSwift - Library to help handle mentions.
  • TextAttributes - An easier way to compose attributed strings.
  • Translucid - Lightweight library to set an Image as text background.
  • Twitter Text Obj - An Objective-C implementation of Twitter's text processing library.
  • TwitterTextEditor - A standalone, flexible API that provides a full featured rich text editor for iOS applications.
  • YYText - Powerful text framework for iOS to display and edit rich text.
  • ZSSRichTextEditor - A beautiful rich text WYSIWYG editor for iOS with a syntax highlighted source view.

back to top

Font

Icon fonts and font management utilities for iOS.

  • Font-Awesome-Swift - Font Awesome swift library for iOS.
  • FontAwesome.swift - Use FontAwesome in your Swift projects.
  • FontAwesomeKit - Icon font library for iOS. Currently supports Font-Awesome, Foundation icons, Zocial, and ionicons.
  • FontAwesomeKit.Swift - A better choice for iOS Developer to use FontAwesome Icon.
  • GoogleMaterialDesignIcons - Google Material Design Icons Font for iOS.
  • GoogleMaterialIconFont - Google Material Design Icons for Swift and ObjC project.
  • ios-fontawesome - NSString+FontAwesome.
  • SwiftIconFont - Icons fonts for iOS (FontAwesome, Iconic, Ionicon, Octicon, Themify, MapIcon, MaterialIcon).
  • 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.
  • UIFontComplete - Font management (System & Custom) for iOS and tvOS.

back to top

UI

Ready-made UI components, controls and layout helpers for iOS.

  • BackgroundVideoiOS - A swift and objective-C object that lets you add a background video to iOS views.
  • BAFluidView - UIView that simulates a 2D view of a fluid in motion.
  • BEMCheckBox - Tasteful Checkbox for iOS.
  • Cacao - Pure Swift Cross-platform UIKit (Cocoa Touch) implementation (Supports Linux).
  • ClassicKit - A collection of classic-style UI components for iOS.
  • ComponentKit - A React-Inspired View Framework for iOS, by Facebook.
  • ConfettiView - Confetti View lets you create a magnificent confetti view in your app.
  • DCKit - Set of iOS controls, which have useful IBInspectable properties. Written on Swift.
  • DistancePicker - Custom control to select a distance with a pan gesture, written in Swift.
  • DrawerKit - DrawerKit lets an UIViewController modally present another UIViewController in a manner similar to the way Apple's Maps app works.
  • ElongationPreview - ElongationPreview is an elegant push-pop style view controller with 3D-Touch support and gestures.
  • EPSignature - Signature component for iOS in Swift.
  • EVFaceTracker - Calculate the distance and angle of your device with regards to your face.
  • FAQView - An easy to use FAQ view for iOS written in Swift.
  • FDStackView - Use UIStackView directly in iOS.
  • FlourishUI - A highly configurable and out-of-the-box-pretty UI library.
  • FSPagerView - FSPagerView is an elegant Screen Slide Library. It is extremely helpful for making Banner, Product Show, Welcome/Guide Pages, Screen/ViewController Sliders.
  • GaugeKit - Customizable gauges. Easy reproduce Apple's style gauges.
  • Haptica - Easy Haptic Feedback Generator.
  • HorizontalDial - A horizontal scroll dial like Instagram.
  • IGColorPicker - A customizable color picker for iOS in Swift.
  • JDFlipNumberView - Representing analog flip numbers like airport/trainstation displays.
  • LeeGo - Declarative, configurable & highly reusable UI development as making Lego bricks.
  • LTHRadioButton - A radio button with a pretty fill animation.
  • Macaw-Examples - Various usages of the Macaw library.
  • Material - Material is an animation and graphics framework that allows developers to easily create beautiful applications.
  • MEVHorizontalContacts - An iOS UICollectionViewLayout subclass to show a list of contacts with configurable expandable menu items.
  • NotchKit - A simple way to hide the notch on the iPhone X
  • OAStackView - OAStackView tries to port back the stackview to iOS 7+. OAStackView aims at replicating all the features in UIStackView.
  • OverlayContainer - A library to develop overlay based interfaces, such as the one presented in the iOS 12 Apple Maps or Stocks apps.
  • Pageboy - A simple, highly informative page view controller.
  • PageController - Infinite paging controller, scrolling through contents and title bar scrolls with a delay.
  • Pages - UIPageViewController made simple.
  • Pulley - A library to imitate the iOS 10 Maps UI.
  • RKNotificationHub - Make any UIView a full fledged notification center.
  • SCTrelloNavigation - An iOS native implementation of a Trello Animated Navigation.
  • SegmentedProgressBar - Snapchat / Instagram Stories style animated indicator.
  • ShadowView - Make shadows management easy on UIView.
  • Splitflap - A simple split-flap display for your Swift applications.
  • STAControls โ€“ Handy UIControl subclasses. (Think Three20/NimbusKit of UIControls.) Written in Objective-C.

back to top

Activity Indicator

Spinners, loaders and progress indicators.

  • ActivityIndicatorView - A number of preset loading indicators created with SwiftUI.
  • AlamofireNetworkActivityIndicator - Controls the visibility of the network activity indicator on iOS using Alamofire.
  • DACircularProgress - DACircularProgress is a UIView subclass with circular UIProgressView properties.
  • EZLoadingActivity - Lightweight loading activity HUD.
  • FFCircularProgressView - FFCircularProgressView - An iOS 7-inspired blue circular progress view.
  • FillableLoaders - Completely customizable progress based loaders drawn using custom CGPaths written in Swift.
  • FlexibleSteppedProgressBar - A beautiful easily customisable stepped progress bar.
  • GearRefreshControl - A custom animation for the UIRefreshControl.
  • GradientLoadingBar - An animated gradient loading bar.
  • GradientProgressBar - A gradient progress bar (UIProgressView).
  • IHProgressHUD - Simple HUD, thread safe, supports iOS, tvOS and App Extensions.
  • iOS Circle Progress Bar - iOS Circle Progress Bar.
  • iOS-CircleProgressView - This control will allow a user to use code instantiated or interface builder to create and render a circle progress view.
  • KDCircularProgress - A circular progress view with gradients written in Swift.
  • KYNavigationProgress - Simple extension of UINavigationController to display progress on the UINavigationBar.
  • LinearProgressBar - Linear Progress Bar (inspired by Google Material Design) for iOS.
  • LiquidLoader - Spinner loader components with liquid animation.
  • Loader - Amazing animated switch activity indicator written in swift.
  • M13ProgressSuite - A suite containing many tools to display progress information on iOS.
  • MBCircularProgressBar - A circular, animatable & highly customizable progress bar, editable from the Interface Builder using IBDesignable.
  • MBProgressHUD - Drop-in class for displays a translucent HUD with an indicator and/or labels while work is being done in a background thread.
  • MKProgress - A lightweight ProgressHUD written in Swift. Looks similar to /MBProgressHUD/SVProgressHUD/KVNProgressHUD.
  • MKRingProgressView - A beautiful ring/circular progress view similar to Activity app on Apple Watch, written in Swift.
  • MRProgress - Collection of iOS drop-in components to visualize progress.
  • NJKWebViewProgress - A progress interface library for UIWebView. You can implement progress bar for your in-app browser using this module.
  • NVActivityIndicatorView - Collection of nice loading animations.
  • PKHUD - A Swift based reimplementation of the Apple HUD (Volume, Ringer, Rotation,โ€ฆ) for iOS 8 and above.
  • ProgressHUD - ProgressHUD is a lightweight and easy-to-use HUD.
  • ProgressIndicatorView - A number of preset progress indicators created with SwiftUI.
  • RHPlaceholder - Simple library which give you possibility to add Facebook like loading state for your views.
  • RPLoadingAnimation - Loading animations by using Swift CALayer.
  • RSLoadingView - Awesome loading animations using 3D engine written with Swift.
  • Skeleton - An easy way to create sliding CAGradientLayer animations! Works great for creating skeleton screens for loading content.
  • SkeletonView - An elegant way to show users that something is happening and also prepare them to which contents he is waiting.
  • SnapTimer - Implementation of Snapchat's stories timer.
  • 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".
  • STLoadingGroup - loading views.
  • SVProgressHUD - A clean and lightweight progress HUD for your iOS app.
  • SwiftSpinner - A beautiful activity indicator and modal alert written in Swift using blur effects, translucency, flat and bold design.
  • VHUD Simple HUD.
  • Windless - Windless makes it easy to implement invisible layout loading view.
  • WSProgressHUD - This is a beautiful hud view for iPhone & iPad.
  • YLProgressBar - UIProgressView replacement with an highly and fully customizable animated progress bar in pure Core Graphics.

back to top

Animation

Animation frameworks, keyframe players and motion utilities.

  • ADPuzzleAnimation - Custom animation for UIView inspired by Fabric - Answers animation.
  • ADPuzzleAnimation - Custom animation for UIView inspired by Fabric - Answers animation.
  • AGInterfaceInteraction - library performs interaction with UI interface.
  • AGInterfaceInteraction - library performs interaction with UI interface.
  • AHKBendableView - UIView subclass that bends its edges when its position changes.
  • AHKBendableView - UIView subclass that bends its edges when its position changes.
  • anim - An animation library for iOS with custom easings and easy to follow API.
  • anim - An animation library for iOS with custom easings and easy to follow API.
  • Anima - Anima is chainable Layer-Based Animation library for Swift4.
  • Anima - Anima is chainable Layer-Based Animation library for Swift4.
  • AnimatedCollectionViewLayout - A UICollectionViewLayout subclass that adds custom transitions/animations to the UICollectionView.
  • AnimatedCollectionViewLayout - A UICollectionViewLayout subclass that adds custom transitions/animations to the UICollectionView.
  • Animo - SpriteKit-like animation builders for CALayers.
  • AppAnimations - Collection of iOS animations to inspire your next project.
  • Cheetah - Easy animation library on iOS.
  • CKWaveCollectionViewTransition - Cool wave like transition between two or more UICollectionView.
  • CurryFire - A framework for creating unique animations.
  • Dance - A radical & elegant animation library built for iOS.
  • Dance - A radical & elegant animation library built for iOS.
  • DCAnimationKit - A collection of animations for iOS. Simple, just add water animations.
  • Ease - Animate everything with Ease.
  • Ease - Animate everything with Ease.
  • 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.
  • fireworks - Fireworks effect for UIView
  • fireworks - Fireworks effect for UIView
  • FlightAnimator - Advanced Natural Motion Animations, Simple Blocks Based Syntax.
  • FlightAnimator - Advanced Natural Motion Animations, Simple Blocks Based Syntax.
  • Gemini - Gemini is rich scroll based animation framework for iOS, written in Swift.
  • Interpolate - Swift interpolation for gesture-driven animations.
  • JHChainableAnimations - Easy to read and write chainable animations in Objective-C.
  • JRMFloatingAnimation - An Objective-C animation library used to create floating image views.
  • 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.
  • Lottie - An iOS library for a real time rendering of native vector animations from Adobe After Effects.
  • MotionAnimation - Lightweight animation library for UIKit.
  • MotionBlur - MotionBlur allows you to add motion blur effect to iOS animations.
  • Pastel - Gradient animation effect like Instagram.
  • PMTween - An elegant and flexible tweening library for iOS.
  • RippleEffectView - RippleEffectView - A Neat Rippling View Effect.
  • SamuraiTransition - Swift based library providing a collection of ViewController transitions featuring a number of neat โ€œcuttingโ€ animations.
  • Sica - Simple Interface Core Animation. Run type-safe animation sequencially or parallelly.
  • SPPerspective - Widgets iOS 14 animation with 3D and dynamic shadow. Customisable transform and duration.
  • Spruce iOS Animation Library - Swift library for choreographing animations on the screen.
  • Stellar - A fantastic Physical animation library for swift.
  • SwiftyAnimate - Composable animations in Swift.
  • TheAnimation - Type-safe CAAnimation wrapper. It makes preventing to set wrong type values.
  • TweenKit - Animation library for iOS in Swift.
  • Twinkle - Swift and easy way to make elements in your iOS and tvOS app twinkle.
  • ViewAnimator - ViewAnimator brings your UI to life with just one line.
  • WaterDrops - Simple water drops animation for iOS in Swift.
  • WXWaveView - Add a pretty water wave to your view.
  • YetAnotherAnimationLibrary - Designed for gesture-driven animations. Fast, simple, & extensible!
  • ZoomTransitioning - A custom transition with image zooming animation.

back to top

Transition

Custom view controller and navigation transition libraries.

  • AnimatedTransitionGallery - Collection of iOS 7 custom animated transitions using UIViewControllerAnimatedTransitioning protocol.
  • AppstoreTransition - Simulates the appstore card animation transition.
  • AZTransitions - API to make great custom transitions in one method.
  • BlurryModalSegue - A custom modal segue for providing a blurred overlay effect.
  • BubbleTransition - A custom modal transition that presents and dismiss a controller with an expanding bubble effect.
  • DAExpandAnimation - A custom modal transition that presents a controller with an expanding effect while sliding out the presenter remnants.
  • DeckTransition - A library to recreate the iOS Apple Music now playing transition.
  • 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.
  • Gagat - A delightful way to transition between visual styles in your iOS applications.
  • Hero - Elegant transition library for iOS & tvOS.
  • JTMaterialTransition - An iOS transition for controllers based on material design.
  • Kaeru - Switch viewcontroller like iOS task manager.
  • LiquidSwipe - Liquid navigation animation
  • Motion - Seamless animations and transitions in Swift.
  • NavigationTransitions - Pure SwiftUI Navigation transitions.
  • RMPZoomTransitionAnimator - A custom zooming transition animation for UIViewController.
  • SPStorkController - Very similar to the controllers displayed in Apple Music, Podcasts and Mail Apple's applications.
  • TBIconTransitionKit - Easy to use icon transition kit that allows to smoothly change from one shape to another.
  • Transition - Easy interactive interruptible custom ViewController transitions.
  • TransitionableTab - TransitionableTab makes it easy to animate when switching between tab.
  • View2ViewTransition - Custom interactive view controller transition from one view to another view.
  • 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.

back to top

Alert & Action Sheet

Alerts, toasts, action sheets and banner-style notifications.

  • Alertift - Swifty, modern UIAlertController wrapper.
  • Alerts & Pickers - Advanced usage of native UIAlertController with TextField, DatePicker, PickerView, TableView and CollectionView.
  • BottomSheet - Powerful Bottom Sheet component with content based size, interactive dismissal and navigation controller support.
  • BPStatusBarAlert - A simple alerts that appear on the status bar and below navigation bar(like Facebook).
  • BRYXBanner - A lightweight dropdown notification for iOS 7+, in Swift.
  • BulletinBoard - Generate and Display Bottom Card Interfaces on iOS
  • CDAlertView - Highly customizable alert/notification/success/error/alarm popup.
  • CFAlertViewController - A library that helps you display and customise alerts and action sheets on iPad and iPhone.
  • CFNotify - A customizable framework to create draggable views.
  • CleanyModal - Use nice customized alerts and action sheets with ease, API is similar to native UIAlertController.
  • CRToast - A modern iOS toast view that can fit your notification needs.
  • CustomizableActionSheet - Action sheet allows including your custom views and buttons.
  • DOAlertController - Simple Alert View written in Swift, which can be used as a UIAlertController. (AlertController/AlertView/ActionSheet).
  • Dodo - A message bar for iOS written in Swift.
  • EZAlertController - Easy Swift UIAlertController.
  • FCAlertView - A Flat Customizable AlertView for iOS. (Swift).
  • FCAlertView - A Flat Customizable AlertView for iOS. (Objective-C).
  • FloatingActionSheetController - FloatingActionSheetController is a cool design ActionSheetController library written in Swift.
  • GSMessages - A simple style messages/notifications for iOS 7+.
  • HDNotificationView - Emulates the native Notification Banner UI for any alert.
  • Hokusai - A Swift library to provide a bouncy action sheet.
  • InAppNotify - Swift library to manage in-app notification in swift language, like WhatsApp, Telegram, Frind, etc.
  • JDStatusBarNotification - Easy, customizable notifications displayed on top of the statusbar.
  • Jelly - Jelly provides custom view controller transitions with just a few lines of code.
  • JLToast - Toast for iOS with very simple interface.
  • LCActionSheet - A simple ActionSheet. WeChat, Weibo and QQ all use similar styles. Fully support Swift.
  • LNRSimpleNotifications - Simple Swift in-app notifications. LNRSimpleNotifications is a simplified Swift port of TSMessages.
  • Loaf - A simple framework for easy iOS Toasts.
  • Malert - Malert is a simple, easy and custom iOS UIAlertView written in Swift.
  • NoticeBar - A simple NoticeBar written by Swift 3, similar with QQ notice view.
  • NotificationBanner - The easiest way to display highly customizable in app notification banners in iOS.
  • NYAlertViewController - Highly configurable iOS Alert Views with custom content views.
  • PCLBlurEffectAlert - Swift AlertController with UIVisualEffectView.
  • PMAlertController - PMAlertController is a great and customizable substitute to UIAlertController.
  • PopMenu - A cool and customizable popup style action sheet ๐Ÿ˜Ž
  • RKDropdownAlert - Extremely simple UIAlertView alternative.
  • RMActionController - Present any UIView in an UIAlertController like manner.
  • RMDateSelectionViewController - Select a date using UIDatePicker in a UIAlertController like fashion.
  • RMessage - A crisp in-app notification/message banner built in ObjC.
  • RMPickerViewController - Select something using UIPickerView in a UIAlertController like fashion.
  • SCLAlertView-Swift - Beautiful animated Alert View, written in Swift.
  • Sheet - SHEET helps you easily create a wide variety of action sheets with navigation features used in the Flipboard App
  • SimpleAlert - Customizable simple Alert and simple ActionSheet for Swift.
  • SPAlert - Native popup from Apple Music & Feedback in AppStore. Contains Done & Heart presets.
  • StatusAlert - Display Apple system-like self-hiding status alerts without interrupting user flow.
  • SweetAlert - Live animated Alert View for iOS written in Swift.
  • Swift-Prompts - A Swift library to design custom prompts with a great scope of options to choose from.
  • SwiftMessages - A very flexible message bar for iOS written in Swift.
  • 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.
  • TKSwarmAlert - Animated alert library like Swarm app.
  • TOActionSheet - A custom-designed reimplementation of the UIActionSheet control for iOS
  • Toast-Swift - A Swift extension that adds toast notifications to the UIView object class.
  • TTGSnackbar - Show simple message and action button on the bottom of the screen with multi kinds of animation.
  • XLActionController - Fully customizable and extensible action sheet controller written in Swift.

back to top

Badge

Notification and count badges for UI elements.

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

back to top

Button

Customizable button controls and helpers.

  • BEMCheckBox - Tasteful Checkbox for iOS. (Check box)
  • ButtonProgressBar-iOS - A small and flexible UIButton subclass with animated loading progress, and completion animation.
  • DOFavoriteButton - Cute Animated Button written in Swift.
  • DynamicButton - Yet another animated flat buttons in Swift
  • EasySocialButton - An easy way to create beautiful social authentication buttons.
  • FloatingButton - Easily customizable floating button menu created with SwiftUI.
  • Floaty - โค๏ธ Floating Action Button for iOS
  • HTPressableButton - Flat design pressable button.
  • JOEmojiableBtn - Emoji selector like Facebook Reactions.
  • LGButton - A fully customisable subclass of the native UIControl which allows you to create beautiful buttons without writing any line of code.
  • LiquidFloatingActionButton - Material Design Floating Action Button in liquid state
  • OnOffButton - Custom On/Off Animated UIButton, written in Swift. By Creativedash
  • PMSuperButton - A powerful UIButton with super powers, customizable from Storyboard!
  • SSBouncyButton - iOS7-style bouncy button UI component.
  • SwiftyButton - Simple and customizable button in Swift
  • TORoundedButton - A high-performance button control with rounded corners.
  • TransitionButton - UIButton sublass for loading and transition animation
  • VBFPopFlatButton - Flat button with 9 different states animated using Facebook POP.
  • WCLShineButton - This is a UI lib for iOS. Effects like shining.
  • ZFRippleButton - Custom UIButton effect inspired by Google Material Design

back to top

Calendar

Calendar views, date pickers and schedule components.

  • 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
  • CalendarKit - Fully customizable calendar day view.
  • CalendarPopUp - CalendarPopUp - JTAppleCalendar library.
  • CVCalendar - A custom visual calendar for iOS 8+ written in Swift (2.0).
  • DateTimePicker - A nicer iOS UI component for picking date and time
  • Daysquare - An elegant calendar control for iOS.
  • ElegantCalendar - The elegant full-screen calendar missed in SwiftUI.
  • FSCalendar - A fully customizable iOS calendar library, compatible with Objective-C and Swift.
  • GLCalendarView - A fully customizable calendar view acting as a date range picker
  • 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
  • JTAppleCalendar - The Unofficial Swift Apple Calendar Library. View. Control. for iOS & tvOS
  • JTCalendar - A customizable calendar view for iOS.
  • 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.
  • MBCalendarKit - A calendar framework for iOS built with customization, and localization in mind.
  • RSDayFlow - iOS 7+ Calendar with Infinite Scrolling.

back to top

Cards

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

  • CardAnimation - Card flip animation by pan gesture.
  • CardParts - A reactive, card-based UI framework built on UIKit.
  • Cards - Awesome iOS 11 AppStore's Card Views.
  • CardsLayout - Nice card-designed custom collection view layout.
  • DMSwipeCards - Tinder like card stack that supports lazy loading and generics
  • Koloda - KolodaView is a class designed to simplify the implementation of Tinder like cards on iOS.
  • 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!
  • Shuffle - A multi-directional card swiping library inspired by Tinder.
  • TisprCardStack - Library that allows to have cards UI.
  • VerticalCardSwiper - A marriage between the Shazam Discover UI and Tinder, built with UICollectionView in Swift.

back to top

Form & Settings

Input validators, form helpers and form builders.

  • Eureka - Elegant iOS form builder in Swift.
  • Formalist - Declarative form building framework for iOS
  • Former - Former is a fully customizable Swift2 library for easy creating UITableView based form.
  • formvalidator-swift - A framework to validate inputs of text fields and text views in a convenient way.
  • GenericPasswordRow - A row for Eureka to implement password validations.
  • SwiftValidator - A rule-based validation library for Swift
  • SwiftyFORM - SwiftyFORM is a form framework for iOS written in Swift
  • ValidatedPropertyKit - Easily validate your Properties with Property Wrappers.
  • XLForm - XLForm is the most flexible and powerful iOS library to create dynamic table-view forms. Fully compatible with Swift & Obj-C.

back to top

Keyboard

Keyboard avoidance, custom keyboards and input helpers.

  • 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

Enhanced UILabel replacements and text-display utilities.

  • ActiveLabel.swift - UILabel drop-in replacement supporting Hashtags (#), Mentions (@) and URLs (http://) written in Swift
  • CountdownLabel - Simple countdown UILabel with morphing animation, and some useful function.
  • GlitchLabel - Glitching UILabel for iOS.
  • LTMorphingLabel - Graceful morphing effects for UILabel written in Swift.
  • MZTimerLabel - A handy class for iOS to use UILabel as a countdown timer or stopwatch just like in Apple Clock App.
  • NumberMorphView - A label view for displaying numbers which can transition or animate using a technique called number tweening or number morphing.
  • Preloader.Ophiuchus - Custom Label to apply animations on whole text or letters.
  • RQShineLabel - Secret app like text animation
  • 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.
  • THLabel - UILabel subclass, which additionally allows shadow blur, inner shadow, stroke text and fill gradient.
  • TOMSMorphingLabel - Configurable morphing transitions between text values of a label.
  • TriLabelView - A triangle shaped corner label view for iOS written in Swift.
  • TTTAttributedLabel - A drop-in replacement for UILabel that supports attributes, data detectors, links, and more
  • UICountingLabel - Adds animated counting support to UILabel.
  • ZCAnimatedLabel - UILabel replacement with fine-grain appear/disappear animation

back to top

Login

Pre-built login UIs and authentication flows.

  • Cely - Plug-n-Play login framework written in Swift.
  • 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.

back to top

Menu

Side menus, drop-downs, context menus and navigation drawers.

  • AirBar - UIScrollView driven expandable menu written in Swift 3.
  • AKSideMenu - Beautiful iOS side menu library with parallax effect.
  • 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.
  • CategorySliderView - slider view for choosing categories. add any UIView type as category item view. Fully customisable
  • CircleBar - ๐Ÿ”ถ A fun, easy-to-use tab bar navigation controller for iOS.
  • CircleMenu - An animated, multi-option menu button.
  • Context-Menu.iOS - You can easily add awesome animated context menu to your app.
  • ContextMenu - An iOS context menu UI inspired by Things 3.
  • DropDown - A Material Design drop down for iOS
  • DropDownMenuKit - A simple, modular and highly customizable UIKit menu, that can be attached to the navigation bar or toolbar, written in Swift.
  • Dropdowns - ๐Ÿ’ง Dropdown in Swift
  • DTPagerController - A fully customizable container view controller to display set of ViewControllers in horizontal scroller
  • ENSwiftSideMenu - A simple side menu for iOS 7/8 written in Swift.
  • ExpandingMenu - ExpandingMenu is menu button for iOS written in Swift.
  • FanMenu - Menu with a circular layout based on Macaw.
  • FAPanels - FAPanels for transition
  • FlowingMenu - Interactive view transition to display menus with flowing and bouncing effects in Swift
  • FrostedSidebar - Hamburger Menu using Swift and iOS 8 API's
  • GuillotineMenu - Our Guillotine Menu Transitioning Animation implemented in Swift reminds a bit of a notorious killing machine.
  • IGCMenu - Grid and Circular menu with animation.Easy to customise.
  • IGLDropDownMenu - An iOS drop down menu with pretty animation and easy to customize.
  • InteractiveSideMenu - Customizable iOS Interactive Side Menu written in Swift 3.
  • KWDrawerController - Drawer view controller that easy to use!
  • KYGooeyMenu - A not bad gooey effects menu.
  • LLSlideMenu - This is a spring slide menu for iOS apps
  • MKDropdownMenu - A Dropdown Menu for iOS with many customizable parameters to suit any needs.
  • PageMenu - A paging menu controller built from other view controllers placed inside a scroll view (like Spotify, Windows Phone, Instagram)
  • PagingKit - PagingKit provides customizable menu UI It has more flexible layout and design than the other libraries.
  • Panels - Panels is a framework to easily add sliding panels to your application.
  • Parchment - A paging view controller with a highly customizable menu. Built on UICollectionView, with support for custom layouts and infinite data sources.
  • Persei - Animated top menu for UITableView / UICollectionView / UIScrollView written in Swift
  • PopMenu - PopMenu is pop animation menu inspired by Sina weibo / NetEase app.
  • RadialMenu - RadialMenu is a custom control for providing a touch context menu (like iMessage recording in iOS 8) built with Swift & POP
  • RESideMenu - iOS 7/8 style side menu with parallax effect inspired by Dribbble shots.
  • 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.
  • Side-Menu.iOS - Animated side menu with customizable UI
  • 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.
  • SlideMenuControllerSwift - iOS Slide Menu View based on Google+, iQON, Feedly, Ameba iOS app. It is written in pure Swift.
  • SPLarkController - Settings screen with buttons and switches.
  • SSASideMenu - A Swift implementation of RESideMenu. A iOS 7/8 style side menu with parallax effect.
  • SwiftyMenu - A Simple and Elegant DropDown menu for iOS ๐Ÿ”ฅ๐Ÿ’ฅ
  • SwipeMenuViewController - Swipable tab and menu View and ViewController.
  • ViewDeck - An implementation of the sliding functionality found in the Path 2.0 or Facebook iOS apps.
  • VLDContextSheet - Context menu similar to the one in the Pinterest iOS app
  • XXXRoundMenuButton - A simple circle style menu.
  • YNDropDownMenu - Adorable iOS drop down menu with Swift3.

back to top

Navigation Bar

Customizable navigation bars and top-of-screen UI components.

  • AMScrollingNavbar - Scrollable UINavigationBar that follows the scrolling of a UIScrollView
  • BusyNavigationBar - A UINavigationBar extension to show loading effects
  • HidingNavigationBar - Easily hide and show a view controller's navigation bar (and tab bar) as a user scrolls
  • KDInteractiveNavigationController - A UINavigationController subclass that support pop interactive UINavigationbar with hidden or show.
  • 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
  • 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

Customizable picker views and selection controls.

  • ActionSheetPicker-3.0 - Quickly reproduce the dropdown UIPickerView / ActionSheet functionality on iOS.
  • ADDatePicker - A fully customizable iOS Horizontal PickerView library, written in pure swift.
  • CountryPicker - ๐Ÿ“… UIPickerView with Country names flags and phoneCodes
  • CountryPickerView- A simple, customizable view for efficiently collecting country information in iOS apps
  • CZPicker - A picker view shown as a popup for iOS.
  • DatePickerDialog - Date picker dialog for iOS
  • Mandoline - An iOS picker view to serve all your "picking" needs
  • McPicker - A customizable, closure driven UIPickerView drop-in solution with animations that is rotation ready.
  • PickerView - A customizable alternative to UIPickerView in Swift.
  • SKCountryPicker - A simple, customizable Country picker for picking country or dialing code.

back to top

Popup

Popups, modals, bottom sheets and overlay components.

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

back to top

ProgressView

Progress bars and determinate progress indicators.

back to top

Pull to Refresh

Pull-to-refresh controls and animations.

back to top

Rating Stars

Star ratings and review-input controls.

  • Cosmos - A star rating control for iOS / Swift
  • FloatRatingView - Whole, half or floating point ratings control written in Swift
  • HCSStarRatingView - Simple star rating view for iOS written in Objective-C
  • StarryStars - StarryStars is iOS GUI library for displaying and editing ratings
  • TTGEmojiRate - An emoji-liked rating view for iOS, implemented in Swift.

back to top

ScrollView

Custom UIScrollView subclasses and scrolling helpers.

  • AppStoreStyleHorizontalScrollView - App store style horizontal scroll view.
  • CrownControl - Inspired by the Apple Watch Digital Crown, CrownControl is a tiny accessory view that enables scrolling through scrollable content without lifting your thumb.
  • PullToDismiss - You can dismiss modal viewcontroller by pulling scrollview or navigationbar in Swift.
  • ScrollingFollowView - ScrollingFollowView is a simple view which follows UIScrollView scrolling.
  • SegementSlide - Multi-tier UIScrollView nested scrolling solution.
  • 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.
  • 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.
  • UIScrollView-InfiniteScroll - UIScrollView infinite scroll category.
  • VegaScroll - VegaScroll is a lightweight animation flowlayout for UICollectionView completely written in Swift 4, compatible with iOS 11 and Xcode 9

back to top

Segmented Control

Segmented controls and tab-style selectors.

back to top

Slider

UISlider subclasses and custom slider controls.

  • AGCircularPicker - AGCircularPicker is helpful component for creating a controller aimed to manage any calculated parameter.
  • ASValueTrackingSlider - A UISlider subclass that displays the slider value in a popup view
  • CircleSlider - CircleSlider is a Circular slider library. written in pure Swift.
  • Fluid Slider - A slider widget with a popup bubble displaying the precise value selected.
  • HGCircularSlider - A custom reusable circular slider control for iOS application.
  • MARKRangeSlider - A custom reusable slider control with 2 thumbs (range slider).
  • MTCircularSlider - A feature-rich circular slider control.
  • MultiSlider - UISlider clone with multiple thumbs and values, optional snap intervals, optional value labels.
  • RangeSeekSlider - A customizable range slider for iOS.
  • RangeSlider - A simple range slider made in Swift
  • StepSlider - StepSlider its custom implementation of slider such as UISlider for preset integer values.
  • TTRangeSlider - A slider, similar in style to UISlider, but which allows you to pick a minimum and maximum range.

back to top

Splash View

Launch screens, splash views and loading animations.

  • CBZSplashView - Twitter style Splash Screen View. Grows to reveal the Initial view behind.
  • RevealingSplashView - A Splash view that animates and reveals its content, inspired by Twitter splash

back to top

Status Bar

Status bar customization and overlay utilities.

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

back to top

Stepper

UIStepper subclasses and increment/decrement controls.

  • GMStepper - A stepper with a sliding label in the middle.
  • SnappingStepper - An elegant alternative to the UIStepper written in Swift
  • ValueStepper - A Stepper object that displays its value.

back to top

Switch

Custom UISwitch replacements and toggle controls.

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

back to top

Tab Bar

Customizable tab bars and tab-navigation components.

  • adaptive-tab-bar - AdaptiveController is a 'Progressive Reduction' Swift module for adding custom states to Native or Custom iOS UI elements
  • animated-tab-bar - RAMAnimatedTabBarController is a Swift module for adding animation to tabbar items.
  • AnimatedTabBar - A tabbar with number of preset animations. Written with SwiftUI.
  • AZTabBarController - A custom tab bar controller for iOS written in Swift 3.0
  • BEKCurveTabbar - compatible with XCode +10 and fully customizable via Interface_Builder panel. BEKCurveTabBar derived UITabBar class and compatible with every iOS devices.
  • ColorMatchTabs - Interesting way to display tabs
  • ESTabBarController - A tab bar controller for iOS that allows highlighting buttons and setting custom actions to them.
  • ExpandedTabBar - Very creative designed solution for "more" items in UITabBarController
  • 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.
  • GooeyTabbar - A gooey effect tabbar
  • KYWheelTabController - KYWheelTabController is a subclass of UITabBarController.It displays the circular menu instead of UITabBar.
  • MiniTabBar - A clean simple alternative to the UITabBar
  • 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.
  • SmoothTab - Smooth customizable tabs for iOS apps.
  • SwipeableTabBarController - UITabBarController with swipe interaction between its tabs.
  • SwipeViewController - SwipeViewController is a Swift modification of RKSwipeBetweenViewControllers - navigate between pages / ViewControllers
  • TabDrawer - Customizable TabBar UI element that allows you to run a block of code upon TabBarItem selection, written in Swift
  • Tabman - A powerful paging view controller with indicator bar for iOS.
  • TabPageViewController - Paging view controller and scroll tab view.
  • WormTabStrip Beatiful ViewPager For iOS written in Swift (inspired by Android SmartTabLayout)
  • XLPagerTabStrip - Android PagerTabStrip for iOS.

back to top

Table View / Collection View

Tools and components for UITableView and UICollectionView.

Table View

UITableView helpers, data-source abstractions and cell utilities.

  • AMWaveTransition - Custom transition between viewcontrollers holding tableviews.
  • CascadingTableDelegate - A no-nonsense way to write cleaner UITableViewDelegate and UITableViewDataSource in Swift.
  • DTTableViewManager - Protocol-oriented UITableView management, powered by generics and associated types.
  • MGSwipeTableCell - UITableViewCell subclass that allows to display swippable buttons with a variety of transitions.
  • MYTableViewIndex - A pixel perfect replacement for UITableView section index, written in Swift
  • preview-transition - PreviewTransition is a simple preview gallery controller
  • QuickTableViewController - A simple way to create a UITableView for settings 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.
  • Static - Simple static table views for iOS in Swift.
  • SwiftReorder - Add drag-and-drop reordering to any table view with just a few lines of code. Robust, lightweight, and completely customizable. [e]
  • SwipeCellKit - Swipeable UITableViewCell based on the stock Mail.app, implemented in Swift.
  • SWTableViewCell - An easy-to-use UITableViewCell subclass that implements a swippable content view which exposes utility buttons (similar to iOS 7 Mail Application)
  • TableFlip - A simpler way to do cool UITableView animations! (โ•ฏยฐโ–กยฐ๏ผ‰โ•ฏ๏ธต โ”ปโ”โ”ป
  • TableKit - Type-safe declarative table views with Swift
  • TableViewDragger - A cells of UITableView can be rearranged by drag and drop.
  • TimelineTableViewCell - Simple timeline view implemented by UITableViewCell written in Swift 3.0.
  • TORoundedTableView - A subclass of UITableView that styles it like Settings.app on iPad
  • 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.
  • ZYThumbnailTableView - a TableView have thumbnail cell only, and you can use gesture let it expands other expansionView, all diy

back to top

Collection View

UICollectionView helpers and advanced collection layouts.

  • ASCollectionView - A Swift collection view inspired by Airbnb.
  • 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.
  • Carbon - ๐Ÿšด A declarative library for building component-based user interfaces in UITableView and UICollectionView.
  • CollectionKit - A modern Swift framework for building reusable data-driven collection components.
  • Conv - Conv smart represent UICollectionView data structure more than UIKit.
  • DataSources - Type-safe data-driven List-UI Framework. (We can also use ASCollectionNode)
  • DiffableDataSources - A library for backporting UITableView/UICollectionViewDiffableDataSource.
  • DisplaySwitcher - Custom transition between two collection view layouts
  • Dwifft - Swift Diff
  • GenericDataSource - A generic small reusable components for data source implementation for UITableView/UICollectionView in Swift.
  • GLTableCollectionView - Netflix and App Store like UITableView with UICollectionView
  • IGListKit - A data-driven UICollectionView framework for building fast and flexible lists.
  • KDDragAndDropCollectionView - Dragging & Dropping data across multiple UICollectionViews.
  • MEVFloatingButton - An iOS drop-in UITableView, UICollectionView and UIScrollView superclass category for showing a customizable floating button on top of it.
  • MSPeekCollectionViewDelegateImplementation - A custom paging behavior that peeks the previous and next items in a collection view.
  • PagingView - Infinite paging, Smart auto layout, Interface of similar to UIKit.
  • Reusable - A Swift mixin for UITableViewCells and UICollectionViewCells
  • Sapporo - Cellmodel-driven collectionview manager
  • SimpleSource - Easy and type-safe iOS table and collection views in Swift.
  • StickyCollectionView-Swift - UICollectionView layout for presenting of the overlapping cells.
  • SwiftSpreadSheet - Spreadsheet CollectionViewLayout in Swift. Fully customizable.
  • TLIndexPathTools - TLIndexPathTools is a small set of classes that can greatly simplify your table and collection views.

back to top

Expandable Cell

Expandable and collapsible table/collection view cells.

back to top

Header

Custom section headers and floating-header helpers.

  • 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.
  • ParallaxTableViewHeader - Parallax scrolling effect on UITableView header view when a tableView is scrolled.

back to top

Placeholder

Empty-state and placeholder views for lists and collections.

  • 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

Custom collection view layouts: waterfall, circular, tag-cloud and more.

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

back to top

Tag

Tag input fields, chip controls and tag-cloud views.

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

back to top

TextField & TextView

UITextField and UITextView subclasses with added functionality.

  • ARAutocompleteTextView - subclass of UITextView that automatically displays text suggestions in real-time. Perfect for email Textviews.
  • 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.
  • CBPinEntryView - A customisable view written in Swift 4.2 for any pin, code or password entry. Supports one time codes in iOS 12.
  • CHIOTPField - A set of textfields that can be used for One-time passwords, SMS codes, PIN codes, etc.
  • CocoaTextField - UITextField created according to the Material.IO guidelines of 2019.
  • DTTextField - DTTextField is a custom textfield with floating placeholder and error label in Swift3.0.
  • GrowingTextView - An UITextView in Swift3 and Swift2.3. Support auto growing, placeholder and length limit.
  • HTYTextField - A UITextField with bouncy placeholder.
  • InputBarAccessoryView - A simple and easily customizable InputAccessoryView for making powerful input bars with autocomplete and attachments.
  • InstantSearch iOS - A library of widgets and helpers to build instant-search applications on iOS.
  • IQDropDownTextField - TextField with DropDown support using UIPickerView.
  • JVFloatLabeledTextField - UITextField subclass with floating labels.
  • KMPlaceholderTextView - A UITextView subclass that adds support for multiline placeholder written in Swift.
  • 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.
  • NextGrowingTextView - The next in the generations of 'growing textviews' optimized for iOS 7 and above.
  • PasswordTextField - A custom TextField with a switchable icon which shows or hides the password and enforce good password policies.
  • PYSearch - An elegant search controller which replaces the UISearchController for iOS (iPhone & iPad).
  • Reel Search - RAMReel is a controller that allows you to choose options from a list.
  • RPFloatingPlaceholders - UITextField and UITextView subclasses with placeholders that change into floating labels when the fields are populated with text.
  • RSFloatInputView - A Float Input View with smooth animation and supporting icon and seperator written with Swift.
  • RSKGrowingTextView - A light-weight UITextView subclass that automatically grows and shrinks.
  • RSKPlaceholderTextView - A light-weight UITextView subclass that adds support for placeholder.
  • SearchTextField - UITextField subclass with autocompletion suggestions list.
  • SelectableTextView - A text view that supports selection and expansion.
  • StatefulViewController - Placeholder views based on content, loading, error or empty states.
  • styled-text - Declarative text styles and streamlined Dynamic Type support for iOS.
  • TextFieldCounter - UITextField character counter with lovable UX.
  • TextFieldEffects - Custom UITextFields effects inspired by Codrops, built using Swift.
  • TweeTextField - Lightweight set of text fields with nice animation and functionality.
  • UITextField-Navigation - UITextField-Navigation adds next, previous and done buttons to the keyboard for your UITextFields.
  • UITextField-Shake - UITextField category that adds shake animation. Also with Swift version
  • VENTokenField - Easy-to-use token field that is used in the Venmo app.
  • VMaskTextField - VMaskTextField is a library which create an input mask for iOS.

back to top

UIPageControl

UIPageControl alternatives and paging indicators.

  • CHIPageControl - A set of cool animated page controls to replace boring UIPageControl.
  • PageControls - This is a selection of custom page controls to replace UIPageControl, inspired by a dribbble found here.
  • TKRubberIndicator - Rubber Indicator in Swift.

back to top

Web View

WKWebView and UIWebView wrappers and helpers.

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

back to top

Utility

General-purpose utilities, extensions and Swiss-army helpers for iOS.

  • 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

GDPR, tracking transparency and user-consent management libraries.

  • PrivacyFlash Pro - Generate a privacy policy for your iOS app from its code
  • 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.

back to top

VR

Virtual reality SDKs and frameworks for iOS apps.

  • 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

Onboarding screens, walkthroughs and introductory tutorials.

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

back to top

Websites

Essential websites for iOS developers to follow.

back to top

WebSocket

WebSocket client libraries for real-time communication on iOS.

  • socket.io-client-swift - Socket.IO-client for iOS/macOS.
  • SocketRocket - A conforming Objective-C WebSocket client library.
  • Socks - Pure-Swift Sockets: TCP, UDP; Client, Server; Linux, macOS.
  • Starscream - Websockets in swift for iOS and macOS.
  • 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.
  • SwiftSocket - simple socket library for apple swift lang.

back to top

Tools

Command-line utilities, code generators and helper tools for iOS development.

  • abandoned-strings - Command line program that detects unused resource strings in an iOS or macOS application.
  • AppDevKit - AppDevKit is an iOS development library that provides developers with useful features to fulfill their everyday iOS app development needs.
  • appledoc - ObjectiveC code Apple style documentation set generator.
  • AssetChecker ๐Ÿ‘ฎ - Keeps your Assets.xcassets files clean and emits warnings when something is suspicious.
  • Attabench - Microbenchmarking app for Swift with nice log-log plots.
  • AVXCAssets-Generator - AVXCAssets Generator takes path for your assets images and creates appiconset and imageset for you in just one click.
  • Blade - Generate Xcode image catalogs for iOS / macOS app icons, universal images, and more.
  • BuildTimeAnalyzer - Build Time Analyzer for Swift.
  • Cichlid - automatically delete the current project's DerivedData directories.
  • Cutter - A tool to generate iOS Launch Images (Splash Screens) for all screen sizes starting from a single template.
  • Duration - A simple Swift package for measuring and reporting the time taken for operations.
  • Ecno - Ecno is a task state manager built on top of UserDefaults in pure Swift 3.
  • fastlane-plugin-appicon - Generate required icon sizes and iconset from a master application icon.
  • FBSimulatorControl - A macOS library for managing and manipulating iOS Simulators
  • FengNiao - A command line tool for cleaning unused resources in Xcode.
  • GDPerformanceView-Swift - Shows FPS, CPU usage, app and iOS versions above the status bar and report FPS and CPU usage via delegate.
  • GetUniversal.link - Free Universal Link & Apple App Site Association testing tool.
  • 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!
  • infer - A static analyzer for Java, C and Objective-C.
  • iSimulator - iSimulator is a GUI utility to control the Simulator, and manage the app installed on the simulator.
  • Jazzy - Soulful docs for Swift & Objective-C.
  • 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.
  • Laurine - Laurine - Localization code generator written in Swift. Sweet!
  • LicensePlist - A license list generator of all your dependencies for iOS applications.
  • LifetimeTracker - Find retain cycles / memory leaks sooner.
  • Lona - A tool for defining design systems and using them to generate cross-platform UI code, Sketch files, images, and other artifacts.
  • Misen - Script to support easily using Xcode Asset Catalog in Swift.
  • 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.
  • Nomad - Suite of command line utilities & libraries for sending APNs, create & distribute .ipa, verify In-App-Purchase receipt and more.
  • Pecker - CodePecker is a tool to detect unused code.
  • Peek - Take a Peek at your application.
  • Plank - A tool for generating immutable model objects.
  • PlayAlways - Create Xcode playgrounds from your menu bar
  • playgroundbook - Tool for Swift Playground books.
  • ProvisionQL - Quick Look plugin for apps and provisioning profile files.
  • R.swift - Tool to get strong typed, autocompleted resources like images, cells and segues in your Swift project.
  • Respresso Image Converter - Multiplatform image converter for iOS, Android, and Web that supports pdf, svg, vector drawable, jpg, png, and webp formats.
  • Retini - A super simple retina (2x, 3x) image converter.
  • Rugby - ๐Ÿˆ Cache CocoaPods for faster rebuild and indexing Xcode project.
  • SBConstants - Generate a constants file by grabbing identifiers from storyboards in a project.
  • Shark - Swift Script that transforms the .xcassets folder into a type safe enum.
  • SourceKitten - An adorable little framework and command line tool for interacting with SourceKit.
  • Sourcery - A tool that brings meta-programming to Swift, allowing you to code generate Swift code.
  • Speculid - generate Image Sets and App Icons from SVG, PNG, and JPEG files
  • Storyboard -> SwiftUI Converter - Storyboard -> SwiftUI Converter is a converter to convert .storyboard and .xib to SwiftUI.
  • StoryboardMerge - Xcode storyboards diff and merge tool.
  • Struct - A tool for iOS and Mac developers to automate the creation and management of Xcode projects.
  • Swift Package Index - Swift packages list with many information about quality and compatiblity of package.
  • SwiftCompilationPerformanceReporter - Generate automated reports for slow Swift compilation paths in specific targets.
  • swiftenv - swiftenv allows you to easily install, and switch between multiple versions of Swift.
  • SwiftGen - A collection of Swift tools to generate Swift code (enums for your assets, storyboards, Localizable.strings and UIColors).
  • SwiftLintXcode - An Xcode plug-in to format your code using SwiftLint.
  • Traits - Library for a real-time design and behavior modification of native iOS apps without recompiling (code and interface builder changes are supported).
  • 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.
  • ViewMonitor - ViewMonitor can measure view positions with accuracy.
  • WatchdogInspector - Shows your current framerate (fps) in the status bar of your iOS app.
  • xcenv - Groom your Xcode environment.
  • XcodeGen - Command line tool that generates your Xcode project from a spec file and your folder structure.
  • Xcodes.app - The easiest way to install and switch between multiple versions of Xcode.
  • xib2Storyboard - A tool to convert Xcode .xib to .storyboard files.
  • Xtrace - Trace Objective-C method calls by class or instance.
  • Zolang - A programming language for sharing logic between iOS, Android and Tools.

back to top

Tutorials and Keynotes

Video tutorials, keynote recordings and conference talks for iOS developers.

back to top

UI Templates

Design templates and UI kits for jump-starting iOS app design.

back to top

Xcode

Extensions, themes and other enhancements for Xcode.

Extensions

Xcode source editor and project 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

Color themes for Xcode and related tools.

back to top

Other Xcode

Additional Xcode plugins, helpers and utilities.

  • awesome-xcode-scripts - A curated list of useful xcode scripts.
  • SBShortcutMenuSimulator - 3D Touch shortcuts in the Simulator.
  • Swift Macros ๐Ÿš€ - A curated list of community-created Macros and associated learning resources.
  • Synx - A command-line tool that reorganizes your Xcode project folder to match your Xcode groups.
  • 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.
  • Xcode Keymap for Visual Studio Code - This extension ports popular Xcode keyboard shortcuts to Visual Studio Code.

back to top

Releases

No releases published

Sponsor this project

Packages

 
 
 

Contributors

Languages