---
visibility: public
---

# iOS

**repo:** [vsouza/awesome-ios](https://github.com/vsouza/awesome-ios)  
**category:** [[platforms|Platforms]]
**related:** [[swift|Swift]] · [[react-native|React Native]] · [[android|Android]] · [[flutter|Flutter]]

---

## Contributing and Collaborating

Please see [CONTRIBUTING](https://github.com/vsouza/awesome-ios/blob/master/.github/CONTRIBUTING.md) and [CODE-OF-CONDUCT](https://github.com/vsouza/awesome-ios/blob/master/CODE_OF_CONDUCT.md) for details.

## Contents

- [Analytics](#analytics)
- [App Routing](#app-routing)
- [Apple TV](#apple-tv)
- [App Store](#app-store)
- [Architecture Patterns](#architecture-patterns)
- [ARKit](#arkit)
- [Authentication](#authentication)
- [Blockchain](#blockchain)
- [Books](#books)
- [Cache](#cache)
- [Charts](#charts)
- [Code Injection](#code-injection)
- [Code Quality](#code-quality)
    - [Linter](#linter)
- [Color](#color)
- [Command Line](#command-line)
- [Concurrency](#concurrency)
- [Core Data](#[core](/@harrisonqian/awesome/wiki/platforms/core)-data)
- [Courses](#courses)
    - [Getting Started](#getting-started)
- [Database](#database)
- [Data Structures / Algorithms](#data-structures--algorithms)
- [Date & Time](#date--time)
- [Debugging](#debugging)
- [Dependency Injection](#dependency-injection)
- [Dependency / Package Manager](#dependency--package-manager)
- [Deployment / Distribution](#deployment--distribution)
- [EventBus](#eventbus)
- [Files](#files)
- [Functional Programming](#functional-programming)
- [Games](#games)
- [GCD](#gcd)
- [Gesture](#gesture)
- [Graphics](#graphics)
- [Hardware](#hardware)
    - [Bluetooth](#bluetooth)
    - [Camera](#camera)
    - [Force Touch](#force-touch)
    - [iBeacon](#ibeacon)
    - [Location](#location)
    - [Other Hardware](#other-hardware)
- [Layout](#layout)
- [Localization](#localization)
- [Logging](#logging)
- [Machine Learning](#machine-learning)
- [Maps](#maps)
- [Math](#math)
- [Media](#media)
    - [Audio](#audio)
    - [GIF](#gif)
    - [Image](#image)
    - [Media Processing](#media-processing)
    - [PDF](#pdf)
    - [Streaming](#streaming)
    - [Video](#video)
- [Messaging](#messaging)
- [Networking](#networking)
- [Newsletters](#newsletters)
- [Notifications](#notifications)
    - [Push Notifications](#push-notifications)
    - [Push Notification Providers](#push-notification-providers)
- [Objective-C Runtime](#objective-c-runtime)
- [Optimization](#optimization)
- [Other [Awesome](/@harrisonqian/awesome/wiki/miscellaneous/awesome) Lists](#other-awesome-lists)
- [Parsing](#parsing)
    - [CSV](#csv)
    - [JSON](#json)
    - [XML & HTML](#xml--html)
    - [Other Parsing](#other-parsing)
- [Passbook](#passbook)
- [Payments](#payments)
- [Permissions](#permissions)
- [Podcasts](#podcasts)
- [Project setup](#project-setup)
- [Prototyping](#prototyping)
- [Rapid Development](#rapid-development)
- [Reactive Programming](#reactive-programming)
    - [React-Like](#[react](/@harrisonqian/awesome/wiki/front-end-development/react)-like)
- [Reference](#reference)
- [Reflection](#reflection)
- [Regex](#regex)
- [SDK](#sdk)
    - [Official](#official)
    - [Unofficial](#unofficial)
- [Security](#security)
    - [Encryption](#encryption)
    - [Keychain](#keychain)
- [Server](#server)
- [Style Guides](#style-guides)
- [Testing](#testing)
    - [TDD / BDD](#tdd--bdd)
    - [A/B Testing](#ab-testing)
    - [UI Testing](#ui-testing)
    - [Other Testing](#other-testing)
- [Text](#text)
    - [Font](#font)
- [UI](#ui)
    - [Activity Indicator](#activity-indicator)
    - [Alert & Action Sheet](#alert--action-sheet)
    - [Animation](#animation)
    - [Transition](#transition)
    - [Badge](#badge)
    - [Button](#button)
    - [Calendar](#calendar)
    - [Cards](#cards)
    - [Form & Settings](#form--settings)
    - [Keyboard](#keyboard)
    - [Label](#label)
    - [Login](#login)
    - [Menu](#menu)
    - [Navigation Bar](#navigation-bar)
    - [PickerView](#pickerview)
    - [Popup](#popup)
    - [Progress View](#progress-view)
    - [Pull to Refresh](#pull-to-refresh)
    - [Rating Stars](#rating-stars)
    - [ScrollView](#scrollview)
    - [Segmented Control](#segmented-control)
    - [Slider](#slider)
    - [Splash View](#splash-view)
    - [Status Bar](#status-bar)
    - [Stepper](#stepper)
    - [Switch](#switch)
    - [Tab Bar](#tab-bar)
    - [Table View / Collection View](#table-view--collection-view)
      - [Table View](#table-view)
      - [Collection View](#collection-view)
      - [Expandable Cell](#expandable-cell)
      - [Header](#header)
      - [Placeholder](#placeholder)
      - [Collection View Layout](#collection-view-layout)
    - [Tag](#tag)
    - [TextField & TextView](#textfield--textview)
    - [UIPageControl](#uipagecontrol)
    - [Web View](#web-view)
- [Utility](#utility)
- [User Consent](#user-consent)
- [VR](#vr)
- [Walkthrough / Intro / Tutorial](#walkthrough--intro--tutorial)
- [Websites](#websites)
- [Websocket](#websocket)
- [Tools](#tools)
- [Tutorials and Keynotes](#[tutorials](/@harrisonqian/awesome/wiki/computer-science/tutorials)-and-keynotes)
- [UI Templates](#ui-templates)
- [Xcode](#xcode)
    - [Extensions (Xcode 8+)](#extensions-xcode-8)
    - [Themes](#themes)
    - [Other Xcode](#other-xcode)

## Analytics

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

- [Aptabase](https://aptabase.com/for-swift) - Open Source, Privacy-First and Simple [Analytics](/@harrisonqian/awesome/wiki/miscellaneous/analytics) for [Swift](/@harrisonqian/awesome/wiki/programming-languages/swift) [Apps](/@harrisonqian/awesome/wiki/platforms/apps).
- [Answers by Fabric](https://get.fabric.io) - [Answers](/@harrisonqian/awesome/wiki/miscellaneous/answers) gives you real-time insight into people’s experience in your app.
- [Bugsnag](https://www.bugsnag.com/platforms/ios-crash-reporting) - Error tracking with a free tier. Error reports include data on device, release, user, and allows arbitrary data.
- [Countly](https://count.ly) - Open source, mobile & web [analytics](/@harrisonqian/awesome/wiki/miscellaneous/analytics), crash reports and push notifications platform for iOS & [Android](/@harrisonqian/awesome/wiki/platforms/android).
- [devtodev](https://www.devtodev.com/) - Comprehensive [analytics](/@harrisonqian/awesome/wiki/miscellaneous/analytics) service that improves your project and saves time for product development.
- [Embrace](http://embrace.io) - Mobile observability, built on OpenTelemetry, to provide user-focused, reliable [apps](/@harrisonqian/awesome/wiki/platforms/apps).
- [Emerge Tools](https://www.emergetools.com) - Prevent app size & performance regressions on every pull request, get automated insights on how to improve.
- [Instabug](https://instabug.com) - In-app feedback, Bug and Crash reporting, Fix Bugs Faster through user-steps, video recordings, screen annotation, network requests logging.
- [Matomo](https://github.com/matomo-org/matomo-sdk-ios) - The MatomoTracker is an iOS, tvOS and macOS SDK for sending app [analytics](/@harrisonqian/awesome/wiki/miscellaneous/analytics) to a Matomo server.
- [Mixpanel](https://mixpanel.com/) - Advanced [analytics](/@harrisonqian/awesome/wiki/miscellaneous/analytics) platform.
- [MOCA Analytics](https://www.mocaplatform.com/features) - Paid [cross-platform](/@harrisonqian/awesome/wiki/platforms/cross-platform) [analytics](/@harrisonqian/awesome/wiki/miscellaneous/analytics) backend.
- [Segment](https://github.com/segmentio/analytics-ios) - The hassle-free way to integrate [analytics](/@harrisonqian/awesome/wiki/miscellaneous/analytics) into any iOS application.
- [Sentry](https://sentry.io/) - Sentry provides self-hosted and cloud-based error monitoring that helps all software teams discover, triage, and prioritize errors in real-time.
- [Shake](https://www.shakebugs.com/) - In-app feedback and bug reporting tool. Fix app bugs up to 50x faster with detailed device data, repro steps, video recording, black box data, network requests and custom logging.

## App Routing

  *Elegant URL routing, navigation frameworks, deep links and more*

- [ApplicationCoordinator](https://github.com/AndreyPanov/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](https://github.com/SwiftKitz/Appz) - Easily launch and deeplink into external applications, falling back to web if not installed.
- [Composable Navigator](https://github.com/Bahn-X/swift-composable-navigator) - An open source library for building deep-linkable SwiftUI applications with composition, [testing](/@harrisonqian/awesome/wiki/testing/testing) and ergonomics in mind
- [Crossroad](https://github.com/giginet/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](https://github.com/button/DeepLinkKit) - A splendid route-matching, block-based way to handle your deep links.
- [JLRoutes](https://github.com/joeldev/JLRoutes) - URL routing library for iOS with a simple block-based API.
- [Linker](https://github.com/MaksimKurpa/Linker) - Lightweight way to handle internal and external deeplinks for iOS.
- [LiteRoute](https://github.com/SpectralDragon/LiteRoute) - Easy transition between VIPER modules, implemented on pure [Swift](/@harrisonqian/awesome/wiki/programming-languages/swift).
- [Marshroute](https://github.com/avito-tech/Marshroute) - Marshroute is an iOS Library for making your Routers simple but extremely powerful.
- [RouteComposer](https://github.com/ekazaev/route-composer) - Library that helps to handle view controllers composition, routing and deeplinking tasks.
- [Router](https://github.com/freshOS/Router) - Simple Navigation for iOS.
- [RxFlow](https://github.com/RxSwiftCommunity/RxFlow) - Navigation framework for iOS applications based on a Reactive Flow Coordinator pattern.
- [SwiftCurrent](https://github.com/wwt/SwiftCurrent) - A library for managing complex workflows.
- [SwiftRouter](https://github.com/skyline75489/SwiftRouter) - A URL Router for iOS.
- [URLNavigator](https://github.com/devxoul/URLNavigator) - Elegant URL Routing for [Swift](/@harrisonqian/awesome/wiki/programming-languages/swift)
- [WAAppRouting](https://github.com/Wasappli/WAAppRouting) - iOS routing done right. Handles both URL recognition and controller displaying with parsed parameters. All in one line, controller stack preserved automatically!
- [ZIKRouter](https://github.com/Zuikyo/ZIKRouter) - An interface-oriented router for discovering modules and injecting dependencies with protocol in OC & [Swift](/@harrisonqian/awesome/wiki/programming-languages/swift), iOS & macOS. Handles route in a type safe way.

## App Store

*Apple Guidelines and version notification libraries*

- [Apple Review Guidelines](https://developer.apple.com/app-store/review/#common-app-rejections) - Highlighted some of the most common issues that cause [apps](/@harrisonqian/awesome/wiki/platforms/apps) to get rejected.
- [Free App Store Optimization Tool](https://www.mobileaction.co) - Lets you track your App Store visibility in terms of keywords and competitors.
- [Siren](https://github.com/ArtSabintsev/Siren) - Notify users when a new version of your app is available and prompt them to upgrade.

**[back to top](#contributing-and-collaborating)**

## Apple TV

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

- [FocusTvButton](https://github.com/dcordero/FocusTvButton) - Light wrapper of UIButton that allows extra customization for tvOS
- [ParallaxView](https://github.com/PGSSoft/ParallaxView) - iOS controls and extensions that add parallax effect to your application.
- [Swift-GA-Tracker-for-Apple-tvOS](https://github.com/adswerve/Swift-GA-Tracker-for-Apple-tvOS) - Google [Analytics](/@harrisonqian/awesome/wiki/miscellaneous/analytics) tracker for Apple tvOS provides an easy [integration](/@harrisonqian/awesome/wiki/platforms/integration) of Google [Analytics](/@harrisonqian/awesome/wiki/miscellaneous/analytics)’ measurement protocol for Apple TV.
- [TvOSCustomizableTableViewCell](https://github.com/zattoo/TvOSCustomizableTableViewCell) - Light wrapper of UITableViewCell that allows extra customization for tvOS.
- [TvOSMoreButton](https://github.com/cgoldsby/TvOSMoreButton) - A basic tvOS button which truncates long text with '... More'.
- [TvOSPinKeyboard](https://github.com/zattoo/TvOSPinKeyboard) - PIN keyboard for tvOS.
- [TvOSScribble](https://github.com/dcordero/TvOSScribble) - Handwriting numbers recognizer for Siri Remote.
- [TvOSSlider](https://github.com/zattoo/TvOSSlider) - TvOSSlider is an implementation of UISlider for tvOS.
- [TvOSTextViewer](https://github.com/dcordero/TvOSTextViewer) - Light and scrollable view controller for tvOS to present blocks of text
- [XCDYouTubeKit](https://github.com/0xced/XCDYouTubeKit) - YouTube video player for iOS, tvOS and macOS.

## Architecture Patterns

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

- [Clean Architecture for SwiftUI + Combine](https://github.com/nalexn/clean-architecture-swiftui) - A demo project showcasing the production setup of the SwiftUI app with Clean Architecture.
- [CleanArchitectureRxSwift](https://github.com/sergdort/CleanArchitectureRxSwift) - Example of Clean Architecture of iOS app using RxSwift.
- [ios-architecture](https://github.com/tailec/ios-architecture) - A collection of iOS architectures - MVC, MVVM, MVVM+RxSwift, VIPER, RIBs and many others.
- [iOS-Viper-Architecture](https://github.com/MindorksOpenSource/iOS-Viper-Architecture) - This repository contains a detailed sample app that implements VIPER architecture in iOS using libraries and [frameworks](/@harrisonqian/awesome/wiki/front-end-development/frameworks) like Alamofire, AlamofireImage, PKHUD, CoreData etc.
- [Reactant](https://github.com/Brightify/Reactant) - Reactant is a reactive architecture for iOS.
- [Spin](https://github.com/Spinners/Spin.Swift) - A universal implementation of a Feedback Loop system for RxSwift, ReactiveSwift and Combine
- [SwiftyVIPER](https://github.com/codytwinton/SwiftyVIPER) - Makes implementing VIPER architecture much easier and cleaner.
- [Tempura](https://github.com/BendingSpoons/tempura-swift) - A holistic approach to iOS development, inspired by [Redux](/@harrisonqian/awesome/wiki/front-end-development/redux) and MVVM.
- [The Composable Architecture](https://github.com/pointfreeco/swift-composable-architecture) - The Composable Architecture is a library for building applications in a consistent and understandable way, with composition, [testing](/@harrisonqian/awesome/wiki/testing/testing), and ergonomics in mind.
- [VIPER Module Generator](https://github.com/Kaakati/VIPER-Module-Generator) - A Clean VIPER Modules Generator with comments and predfined functions.
- [Viperit](https://github.com/ferranabello/Viperit) - Viper Framework for iOS. Develop an app following VIPER architecture in an easy way. Written and tested in [Swift](/@harrisonqian/awesome/wiki/programming-languages/swift).

**[back to top](#contributing-and-collaborating)**

## ARKit

*Library and tools to help you build unparalleled augmented reality experiences*

- [ARHeadsetKit](https://github.com/philipturner/ARHeadsetKit) - High-level framework for using $5 Google Cardboard to replicate
 Microsoft Hololens.
- [ARKit-CoreLocation](https://github.com/ProjectDent/ARKit-CoreLocation) - Combines the high accuracy of AR with the scale of GPS data.
- [ARKit Emperor](https://github.com/kboy-silvergym/ARKit-Emperor) - The Emperor give you the most practical ARKit samples ever.
- [ARKit Virtual Objects](https://github.com/ignacio-chiazzo/ARKit) - Placing Virtual Objects in Augmented Reality.
- [ARVideoKit](https://github.com/AFathi/ARVideoKit) - Record and capture ARKit videos, photos, Live Photos, and GIFs.
- [Placenote](https://github.com/Placenote/PlacenoteSDK-iOS) - A library that makes ARKit sessions persistent to a location using advanced [computer vision](/@harrisonqian/awesome/wiki/computer-science/computer-vision).
- [SmileToUnlock](https://github.com/rsrbk/SmileToUnlock) - This library uses ARKit Face Tracking in order to catch a user's smile.

**[back to top](#contributing-and-collaborating)**

## Authentication

*Oauth and Oauth2 libraries, social logins and captcha tools.*

- [Heimdallr.swift](https://github.com/trivago/Heimdallr.swift) - Easy to use OAuth 2 library for iOS, written in [Swift](/@harrisonqian/awesome/wiki/programming-languages/swift).
- [InstagramSimpleOAuth](https://github.com/rbaumbach/InstagramSimpleOAuth) - A quick and simple way to authenticate an Instagram user in your iPhone or iPad app.
- [LinkedInSignIn](https://github.com/serhii-londar/LinkedInSignIn) - Simple view controller to login and retrieve access token from LinkedIn.
- [OAuth2](https://github.com/p2/OAuth2) - OAuth2 framework for macOS and iOS, written in [Swift](/@harrisonqian/awesome/wiki/programming-languages/swift).
- [OAuthSwift](https://github.com/OAuthSwift/OAuthSwift) - [Swift](/@harrisonqian/awesome/wiki/programming-languages/swift) based OAuth library for iOS
- [ReCaptcha](https://github.com/fjcaetano/ReCaptcha) - (In)visible ReCaptcha for iOS.
- [SwiftyOAuth](https://github.com/delba/SwiftyOAuth) - A simple OAuth library for iOS with a built-in set of providers.

**[back to top](#contributing-and-collaborating)**

## Blockchain

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

- [BitcoinKit](https://github.com/yenom/BitcoinKit) - [Bitcoin](/@harrisonqian/awesome/wiki/decentralized-systems/bitcoin) protocol toolkit for [Swift](/@harrisonqian/awesome/wiki/programming-languages/swift), BitcoinKit implements [Bitcoin](/@harrisonqian/awesome/wiki/decentralized-systems/bitcoin) protocol in [Swift](/@harrisonqian/awesome/wiki/programming-languages/swift). It is an implementation of the Bitcoin SPV protocol written in swift.
- [CoinpaprikaAPI](https://github.com/coinpaprika/coinpaprika-api-[swift](/@harrisonqian/awesome/wiki/programming-languages/swift)-client) - Coinpaprika API client with free & frequently updated market data from the world of crypto: coin prices, volumes, market caps, ATHs, return rates and more.
- [EthereumKit](https://github.com/yuzushioh/EthereumKit) - EthereumKit is a free, open-source [Swift](/@harrisonqian/awesome/wiki/programming-languages/swift) framework for easily interacting with the [Ethereum](/@harrisonqian/awesome/wiki/decentralized-systems/ethereum).
- [EtherWalletKit](https://github.com/SteadyAction/EtherWalletKit) - [Ethereum](/@harrisonqian/awesome/wiki/decentralized-systems/ethereum) Wallet Toolkit for iOS - You can implement [Ethereum](/@harrisonqian/awesome/wiki/decentralized-systems/ethereum) wallet without a server and blockchain knowledge.
- [Web3.swift](https://github.com/Boilertalk/Web3.swift) - Web3 library for interacting with the [Ethereum](/@harrisonqian/awesome/wiki/decentralized-systems/ethereum) blockchain.
- [web3swift](https://github.com/web3swift-team/web3swift) - Elegant Web3js functionality in [Swift](/@harrisonqian/awesome/wiki/programming-languages/swift). Native ABI parsing and smart contract interactions.

**[back to top](#contributing-and-collaborating)**

## Books

*Most recommended books*

- [Advanced [Swift](/@harrisonqian/awesome/wiki/programming-languages/swift) by Chris Eidhof, Ole Begemann, and Airspeed Velocity](https://www.objc.io/books/advanced-swift/)
- [Anyone Can Create an App by Wendy L. Wise](https://www.manning.com/books/anyone-can-create-an-app)
- [Classic Computer Science Problems in Swift](https://www.manning.com/books/classic-computer-science-problems-in-swift)
- [Cocoa Design Patterns](https://www.amazon.com/Cocoa-Design-Patterns-Erik-Buck/dp/0321535022)
- [Core Data by Florian Kugler and Daniel Eggert](https://www.objc.io/books/core-data/)
- [Functional [Swift](/@harrisonqian/awesome/wiki/programming-languages/swift) by Chris Eidhof, Florian Kugler, and Wouter Swierstra](https://www.objc.io/books/functional-swift/)
- [Hello [Swift](/@harrisonqian/awesome/wiki/programming-languages/swift)! by Tanmay Bakshi with Lynn Beighley](https://www.manning.com/books/hello-swift)
- [iOS Development with [Swift](/@harrisonqian/awesome/wiki/programming-languages/swift) by Craig Grummitt](https://www.manning.com/books/ios-development-with-swift)
- [iOS Programming: The Big Nerd Ranch Guide by Christian Keur, Aaron Hillegass](https://www.bignerdranch.com/books/ios-programming-the-big-nerd-ranch-guide-seventh-edition/)
- [Programming in Objective-C by Stephen G. Kochan](https://www.amazon.com/Programming-Objective-C-6th-Developers-Library/dp/0321967607)
- [Swift in Depth](https://www.manning.com/books/swift-in-depth)
- [The Complete Friday Q & A: Volume 1](https://www.mikeash.com/book.html)
- [The [Swift](/@harrisonqian/awesome/wiki/programming-languages/swift) Programming Language by Apple](https://books.apple.com/us/book/swift-programming-language/id881256329)

**[back to top](#contributing-and-collaborating)**

## Cache

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

- [Awesome Cache](https://github.com/aschuch/AwesomeCache) - Delightful on-disk cache (written in Swift).
- [Cache](https://github.com/hyperoslo/Cache) - Nothing but Cache.
- [Cache](https://github.com/soffes/Cache) - [Swift](/@harrisonqian/awesome/wiki/programming-languages/swift) caching library.
- [Cachyr](https://github.com/nrkno/yr-cachyr) - A small key-value data cache for iOS, macOS and tvOS, written in [Swift](/@harrisonqian/awesome/wiki/programming-languages/swift).
- [Carlos](https://github.com/spring-media/Carlos) - A simple but flexible cache.
- [Disk](https://github.com/saoudrizwan/Disk) - Delightful framework for iOS to easily persist structs, images, and data.
- [HanekeSwift](https://github.com/Haneke/HanekeSwift) - A lightweight generic cache for iOS written in [Swift](/@harrisonqian/awesome/wiki/programming-languages/swift) with extra love for images.
- [Johnny](https://github.com/zolomatok/Johnny) - Melodic Caching for [Swift](/@harrisonqian/awesome/wiki/programming-languages/swift).
- [mattress](https://github.com/buzzfeed/mattress) - iOS Offline Caching for Web Content.
- [MemoryCache](https://github.com/yysskk/MemoryCache) - MemoryCache is type-safe memory cache.
- [PINCache](https://github.com/pinterest/PINCache) - Fast, non-deadlocking parallel object cache for iOS and macOS.
- [RocketData](https://github.com/plivesey/RocketData) - A caching and consistency solution for immutable models.
- [SPTPersistentCache](https://github.com/spotify/SPTPersistentCache) - Everyone tries to implement a cache at some point in their iOS app’s lifecycle, and this is ours. By Spotify.
- [Track](https://github.com/maquannene/Track) - Track is a thread safe cache write by [Swift](/@harrisonqian/awesome/wiki/programming-languages/swift). Composed of DiskCache and MemoryCache which support LRU.
- [UITableView Cache](https://github.com/Kilograpp/UITableView-Cache) - UITableView cell cache that cures scroll-lags on a cell instantiating.
- [YYCache](https://github.com/ibireme/YYCache) - High performance cache framework for iOS.

**[back to top](#contributing-and-collaborating)**

## Charts

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

- [ANDLineChartView](https://github.com/anaglik/ANDLineChartView) - ANDLineChartView is easy to use view-based class for displaying animated line chart.
- [Charts](https://github.com/danielgindi/Charts) - A powerful chart/graph framework, the iOS equivalent to [MPAndroidChart](https://github.com/PhilJay/MPAndroidChart).
- [core-plot](https://github.com/core-plot/core-plot) - A 2D plotting lib which is highly customizable and capable of drawing many types of plots.
- [CoreCharts](https://github.com/cagricolak/CoreCharts) - CoreCharts is a simple powerful yet Charts library for apple products.
- [CSPieChart](https://github.com/youkchansim/CSPieChart) - iOS PieChart Opensource. This is very easy to use and customizable.
- [DDSpiderChart](https://github.com/dadalar/DDSpiderChart) - Easy to use and customizable Spider (Radar) Chart library for iOS written in [Swift](/@harrisonqian/awesome/wiki/programming-languages/swift).
- [Dr-Charts](https://github.com/Zomato/DR-charts) - Dr-Charts is a highly customisable, easy to use and interactive chart/graph framework in Objective-C.
- [EChart](https://github.com/zhuhuihuihui/EChart) - iOS/iPhone/iPad Chart, Graph. Event handling and animation supported.
- [EatFit](https://github.com/Yalantis/EatFit) - Eat fit is a component for attractive data representation inspired by Google Fit.
- [FlowerChart](https://github.com/drinkius/flowerchart) - Flower-shaped chart with custom appearance animation, fully vector.
- [FSInteractiveMap](https://github.com/ArthurGuibert/FSInteractiveMap) - A [charting](/@harrisonqian/awesome/wiki/front-end-development/charting) library to visualize and interact with a vector map on iOS. It's like Geochart but for iOS.
- [FSLineChart](https://github.com/ArthurGuibert/FSLineChart) - A line chart library for iOS.
- [Graphs](https://github.com/recruit-mtl/Graphs) - Light weight charts view generator for iOS.
- [JBChartView](https://github.com/Jawbone/JBChartView) - iOS-based [charting](/@harrisonqian/awesome/wiki/front-end-development/charting) library for both line and bar graphs.
- [JYRadarChart](https://github.com/johnnywjy/JYRadarChart) - An iOS open source Radar Chart implementation.
- [MagicPie](https://github.com/AlexandrGraschenkov/MagicPie) - [Awesome](/@harrisonqian/awesome/wiki/miscellaneous/awesome) layer-based pie chart. Fantastically fast and fully customizable. Amazing animations available with MagicPie.
- [PNChart](https://github.com/kevinzhow/PNChart) - A simple and beautiful chart lib used in Piner and CoinsMan for iOS.
- [PieCharts](https://github.com/i-schuetz/PieCharts) - Easy to use and highly customizable pie charts library for iOS.
- [Scrollable-GraphView](https://github.com/philackm/ScrollableGraphView) - An adaptive scrollable graph view for iOS to visualise simple discrete [datasets](/@harrisonqian/awesome/wiki/miscellaneous/datasets). Written in [Swift](/@harrisonqian/awesome/wiki/programming-languages/swift).
- [SMDiagramViewSwift](https://github.com/VRGsoftUA/SMDiagramView) - Meet cute and very flexibility library for iOS application for different data view in one circle diagram.
- [Swift LineChart](https://github.com/zemirco/swift-linechart) - Line Chart library for iOS written in [Swift](/@harrisonqian/awesome/wiki/programming-languages/swift).
- [SwiftChart](https://github.com/gpbl/SwiftChart) - Line and area chart library for iOS.
- [TEAChart](https://github.com/xhacker/TEAChart) - Simple and intuitive iOS chart library. Contribution graph, clock chart, and bar chart.
- [TKRadarChart](https://github.com/TBXark/TKRadarChart) - A customizable radar chart in [Swift](/@harrisonqian/awesome/wiki/programming-languages/swift).
- [TWRCharts](https://github.com/chasseurmic/TWRCharts) - An iOS wrapper for ChartJS. Easily build animated charts by leveraging the power of native Obj-C code.
- [XJYChart](https://github.com/JunyiXie/XJYChart) - A Beautiful chart for iOS. Support animation, click, slide, area highlight.

**[back to top](#contributing-and-collaborating)**

## Code Injection

 *Decrease development time with these tools*

- [Inject](https://github.com/krzysztofzablocki/Inject) - Hot Reloading for [Swift](/@harrisonqian/awesome/wiki/programming-languages/swift) applications!
- [injectionforxcode](https://github.com/johnno1962/injectionforxcode) - Code injection including [Swift](/@harrisonqian/awesome/wiki/programming-languages/swift).
- [Vaccine](https://github.com/zenangst/Vaccine) - Vaccine is a framework that aims to make your [apps](/@harrisonqian/awesome/wiki/platforms/apps) immune to recompile-decease.

**[back to top](#contributing-and-collaborating)**

## Code Quality

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

- [Aardvark](https://github.com/square/Aardvark) - Aardvark is a library that makes it dead simple to create actionable bug reports.
- [Bootstrap](https://github.com/krzysztofzablocki/Bootstrap) - iOS project bootstrap aimed at high quality coding.
- [Bugsee](https://www.bugsee.com) - In-app bug and crash reporting with video, logs, network traffic and traces.
- [FBRetainCycleDetector](https://github.com/facebook/FBRetainCycleDetector) - iOS library to help detecting retain cycles in runtime.
- [HeapInspector-for-iOS](https://github.com/tapwork/HeapInspector-for-iOS) - Find memory issues & leaks in your iOS app without instruments.
- [KZAsserts](https://github.com/krzysztofzablocki/KZAsserts) - Asserts on roids, test all your assumptions with ease.
- [MLeaksFinder](https://github.com/Tencent/MLeaksFinder) - Find memory leaks in your iOS app at develop time.
- [PSTModernizer](https://github.com/PSPDFKit-labs/PSTModernizer) - Makes it easier to support older versions of iOS by fixing things and adding missing methods.
- [spacecommander](https://github.com/square/spacecommander) - Commit fully-formatted Objective-C code as a team without even trying.
- [SwiftCop](https://github.com/andresinaka/SwiftCop) -  SwiftCop is a validation library fully written in [Swift](/@harrisonqian/awesome/wiki/programming-languages/swift) and inspired by the clarity of [Ruby](/@harrisonqian/awesome/wiki/programming-languages/ruby) On [Rails](/@harrisonqian/awesome/wiki/back-end-development/rails) Active Record validations.
- [SwiftFormat](https://github.com/nicklockwood/SwiftFormat) - A code library and command-line formatting tool for reformatting [Swift](/@harrisonqian/awesome/wiki/programming-languages/swift) code.
- [Tailor](https://github.com/sleekbyte/tailor) - [Cross-platform](/@harrisonqian/awesome/wiki/platforms/cross-platform) static analyzer for [Swift](/@harrisonqian/awesome/wiki/programming-languages/swift) that helps you to write cleaner code and avoid bugs.
- [WeakableSelf](https://github.com/vincent-pradeilles/weakable-self) - A [Swift](/@harrisonqian/awesome/wiki/programming-languages/swift) micro-framework to encapsulate `[weak self]` and `guard` statements within closures.

**[back to top](#contributing-and-collaborating)**

### Linter

*Static code analyzers to enforce style and conventions.*

- [AnyLint](https://github.com/Flinesoft/AnyLint) - Lint anything by combining the power of [Swift](/@harrisonqian/awesome/wiki/programming-languages/swift) & regular expressions.
- [IBLinter](https://github.com/IBDecodable/IBLinter) - A linter tool for Interface Builder.
- [OCLint](https://github.com/oclint/oclint) - Static code analysis tool for improving quality and reducing defects.
- [Swiftlint](https://github.com/realm/SwiftLint) - A tool to enforce [Swift](/@harrisonqian/awesome/wiki/programming-languages/swift) style and conventions.

**[back to top](#contributing-and-collaborating)**

## Color

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

- [BCColor](https://github.com/boycechang/BCColor) - A lightweight but powerful color kit (Swift).
- [ChromaColorPicker](https://github.com/joncardasis/ChromaColorPicker) - An intuitive iOS color picker built in [Swift](/@harrisonqian/awesome/wiki/programming-languages/swift).
- [Colours](https://github.com/bennyguitar/Colours) - A beautiful set of predefined colors and a set of color methods to make your iOS/macOS development life easier.
- [CostumeKit](https://github.com/jakemarsh/CostumeKit) - Base types for theming an app.
- [CSS3ColorsSwift](https://github.com/WorldDownTown/CSS3ColorsSwift) - A UIColor extension with CSS3 Colors name.
- [DynamicColor](https://github.com/yannickl/DynamicColor) - Yet another extension to manipulate colors easily in [Swift](/@harrisonqian/awesome/wiki/programming-languages/swift).
- [FlatUIColors](https://github.com/brynbellomy/FlatUIColors) - Flat UI color palette helpers written in [Swift](/@harrisonqian/awesome/wiki/programming-languages/swift).
- [Gestalt](https://github.com/regexident/Gestalt) - An unintrusive & light-weight iOS app-theming library with support for animated theme switching.
- [Hue](https://github.com/zenangst/Hue) - Hue is the all-in-one coloring utility that you'll ever need.
- [Lorikeet](https://github.com/valdirunars/Lorikeet) - Aesthetic color-scheme generation written in [Swift](/@harrisonqian/awesome/wiki/programming-languages/swift).
- [PFColorHash](https://github.com/PerfectFreeze/PFColorHash) - Generate color based on the given string.
- [PrettyColors](https://github.com/jdhealy/PrettyColors) - Styles and colors text in the Terminal with ANSI escape codes. Conforms to ECMA Standard 48.
- [RandomColorSwift](https://github.com/onevcat/RandomColorSwift) - An attractive color generator for [Swift](/@harrisonqian/awesome/wiki/programming-languages/swift). Ported from `randomColor.js`.
- [SheetyColors](https://github.com/chrs1885/SheetyColors) - An action sheet styled color picker for iOS.
- [SwiftHEXColors](https://github.com/thii/SwiftHEXColors) - HEX color handling as an extension for UIColor.
- [UIColor-Hex-Swift](https://github.com/yeahdongcn/UIColor-Hex-Swift) - Convenience method for creating autoreleased color using RGBA hex string.

**[back to top](#contributing-and-collaborating)**

## Command Line

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

- [Ashen](https://github.com/colinta/Ashen) - A framework for writing terminal applications in [Swift](/@harrisonqian/awesome/wiki/programming-languages/swift).
- [ColorizeSwift](https://github.com/mtynior/ColorizeSwift) - Terminal string styling for [Swift](/@harrisonqian/awesome/wiki/programming-languages/swift).
- [CommandCougar](https://github.com/surfandneptune/CommandCougar) - An elegant pure [Swift](/@harrisonqian/awesome/wiki/programming-languages/swift) library for building command line applications.
- [Commander](https://github.com/kylef/Commander) - Compose beautiful command line interfaces in [Swift](/@harrisonqian/awesome/wiki/programming-languages/swift).
- [Crayon](https://github.com/luoxiu/Crayon) - Terminal string styling with expressive API and 256/TrueColor support.
- [Guaka](https://github.com/nsomar/Guaka) - The smartest and most beautiful (POSIX compliant) command line framework for [Swift](/@harrisonqian/awesome/wiki/programming-languages/swift).
- [Linenoise](https://github.com/andybest/linenoise-swift) - A pure [Swift](/@harrisonqian/awesome/wiki/programming-languages/swift) replacement for readline
- [ModuleInterface](https://github.com/minuscorp/ModuleInterface) - Command Line Tool that generates the Module's Interface from a [Swift](/@harrisonqian/awesome/wiki/programming-languages/swift) project.
- [nef](https://github.com/bow-swift/nef) - Command line tool to ease the creation of documentation in the form of [Swift](/@harrisonqian/awesome/wiki/programming-languages/swift) [Playgrounds](/@harrisonqian/awesome/wiki/programming-languages/playgrounds).
- [Progress](https://github.com/jkandzi/Progress.swift) - Add beautiful progress bars to your loops.
- [SourceDocs](https://github.com/eneko/SourceDocs) - Command Line Tool that generates [Markdown](/@harrisonqian/awesome/wiki/miscellaneous/markdown) documentation from inline source code comments.
- [Swift Argument Parser](https://github.com/apple/swift-argument-parser) - Straightforward, type-safe argument parsing for [Swift](/@harrisonqian/awesome/wiki/programming-languages/swift)
- [SwiftCLI](https://github.com/jakeheis/SwiftCLI) - A powerful framework for developing CLIs in [Swift](/@harrisonqian/awesome/wiki/programming-languages/swift)
- [Swiftline](https://github.com/nsomar/Swiftline) - Swiftline is a set of tools to help you create command line applications.
- [SwiftShell](https://github.com/kareman/SwiftShell) - A [Swift](/@harrisonqian/awesome/wiki/programming-languages/swift) framework for [shell](/@harrisonqian/awesome/wiki/development-environment/shell) scripting and running [shell](/@harrisonqian/awesome/wiki/development-environment/shell) commands.
- [SwiftyTextTable](https://github.com/scottrhoyt/SwiftyTextTable) - A lightweight library for generating text tables.

## Concurrency

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

- [Aojet](https://github.com/aojet/Aojet) - An actor model library for [swift](/@harrisonqian/awesome/wiki/programming-languages/swift).
- [AsyncNinja](https://github.com/AsyncNinja/AsyncNinja) - A complete set of concurrency and reactive programming primitives.
- [AsyncQueue](https://github.com/dfed/swift-async-queue) - A library of queues that enable sending ordered tasks from synchronous to asynchronous contexts.
- [Brisk](https://github.com/jmfieldman/Brisk) - A [Swift](/@harrisonqian/awesome/wiki/programming-languages/swift) DSL that allows concise and effective concurrency manipulation.
- [Concurrent](https://github.com/typelift/Concurrent) - Functional Concurrency Primitives.
- [Flow](https://github.com/JohnSundell/Flow) - Operation Oriented Programming in [Swift](/@harrisonqian/awesome/wiki/programming-languages/swift).
- [Flow-iOS](https://github.com/roytornado/Flow-iOS) - Make your logic flow and data flow clean and human readable.
- [GroupWork](https://github.com/quanvo87/GroupWork) - Easy concurrent, asynchronous tasks in [Swift](/@harrisonqian/awesome/wiki/programming-languages/swift).
- [Kommander](https://github.com/intelygenz/Kommander-iOS) - Kommander is a [Swift](/@harrisonqian/awesome/wiki/programming-languages/swift) library to manage the task execution in different threads. Through the definition a simple but powerful concept, Kommand.
- [Overdrive](https://github.com/saidsikira/Overdrive) - Fast async task based [Swift](/@harrisonqian/awesome/wiki/programming-languages/swift) framework with focus on type safety, concurrency and multi threading.
- [Queuer](https://github.com/FabrizioBrancati/Queuer) - A queue manager, built on top of OperationQueue and Dispatch (aka GCD).
- [StickyLocking](https://github.com/stickytools/sticky-locking) - A general purpose embedded hierarchical lock manager used to build highly concurrent applications of all types.
- [SwiftCoroutine](https://github.com/belozierov/SwiftCoroutine) - [Swift](/@harrisonqian/awesome/wiki/programming-languages/swift) coroutines library for iOS and macOS.
- [SwiftQueue](https://github.com/lucas34/SwiftQueue) - Job Scheduler with Concurrent run, failure/retry, persistence, repeat, delay and more.
- [Threadly](https://github.com/nvzqz/Threadly) - Type-safe thread-local storage in [Swift](/@harrisonqian/awesome/wiki/programming-languages/swift).
- [Venice](https://github.com/Zewo/Venice) - CSP (Coroutines, Channels, Select) for [Swift](/@harrisonqian/awesome/wiki/programming-languages/swift).

**[back to top](#contributing-and-collaborating)**

## Core Data

*Core data Frameworks, wrappers, generators and boilerplates.*

- [AERecord](https://github.com/tadija/AERecord) - Super [awesome](/@harrisonqian/awesome/wiki/miscellaneous/awesome) [Core](/@harrisonqian/awesome/wiki/platforms/core) Data wrapper in [Swift](/@harrisonqian/awesome/wiki/programming-languages/swift).
- [AlecrimCoreData](https://github.com/Alecrim/AlecrimCoreData) - A powerful and simple [Core](/@harrisonqian/awesome/wiki/platforms/core) Data wrapper framework written in [Swift](/@harrisonqian/awesome/wiki/programming-languages/swift).
- [Cadmium](https://github.com/jmfieldman/cadmium) - A complete [swift](/@harrisonqian/awesome/wiki/programming-languages/swift) framework that wraps CoreData and helps facilitate best practices.
- [CloudCore](https://github.com/deeje/CloudCore) - Robust CloudKit synchronization: offline editing, relationships, shared and public databases, field-level deltas, and more.
- [Core Data Query Interface](https://github.com/prosumma/CoreDataQueryInterface) A type-safe, fluent query framework for [Core](/@harrisonqian/awesome/wiki/platforms/core) Data.
- [CoreDataDandy](https://github.com/fuzz-productions/CoreDataDandy) - A feature-light wrapper around [Core](/@harrisonqian/awesome/wiki/platforms/core) Data that simplifies common [database](/@harrisonqian/awesome/wiki/databases/database) operations.
- [CoreDataStack](https://github.com/bignerdranch/CoreDataStack) - The Big Nerd Ranch [Core](/@harrisonqian/awesome/wiki/platforms/core) Data Stack.
- [CoreStore](https://github.com/JohnEstropia/CoreStore) - Powerful [Core](/@harrisonqian/awesome/wiki/platforms/core) Data framework for Incremental Migrations, Fetching, Observering, etc.
- [DataKernel](https://github.com/mrdekk/DataKernel) - Simple CoreData wrapper to ease operations.
- [DATAStack](https://github.com/3lvis/DATAStack) - 100% [Swift](/@harrisonqian/awesome/wiki/programming-languages/swift) Simple Boilerplate Free [Core](/@harrisonqian/awesome/wiki/platforms/core) Data Stack. NSPersistentContainer.
- [Ensembles](https://github.com/drewmccormack/ensembles) - A synchronization framework for [Core](/@harrisonqian/awesome/wiki/platforms/core) Data.
- [Graph](https://github.com/CosmicMind/Graph) - An elegant data-driven framework for CoreData in [Swift](/@harrisonqian/awesome/wiki/programming-languages/swift).
- [JSQCoreDataKit](https://github.com/jessesquires/JSQCoreDataKit) - A swifter [Core](/@harrisonqian/awesome/wiki/platforms/core) Data stack.
- [JustPersist](https://github.com/justeat/JustPersist) - JustPersist is the easiest and safest way to do persistence on iOS with [Core](/@harrisonqian/awesome/wiki/platforms/core) Data support out of the box.
- [MagicalRecord](https://github.com/magicalpanda/MagicalRecord) - Super [Awesome](/@harrisonqian/awesome/wiki/miscellaneous/awesome) Easy Fetching for [Core](/@harrisonqian/awesome/wiki/platforms/core) Data.
- [Mogenerator](https://github.com/rentzsch/mogenerator) - Automatic [Core](/@harrisonqian/awesome/wiki/platforms/core) Data code generation.
- [PredicateFlow](https://github.com/andreadelfante/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](https://github.com/KrakenDev/PrediKit) - An NSPredicate DSL for iOS, macOS, tvOS, & [watchOS](/@harrisonqian/awesome/wiki/platforms/watchos). Inspired by SnapKit and lovingly written in [Swift](/@harrisonqian/awesome/wiki/programming-languages/swift).
- [Skopelos](https://github.com/albertodebortoli/Skopelos) - A minimalistic, thread safe, non-boilerplate and super easy to use version of Active Record on [Core](/@harrisonqian/awesome/wiki/platforms/core) Data. Simply all you need for doing Core Data.
- [Sync](https://github.com/3lvis/Sync) - Modern [Swift](/@harrisonqian/awesome/wiki/programming-languages/swift) [JSON](/@harrisonqian/awesome/wiki/miscellaneous/json) synchronization to [Core](/@harrisonqian/awesome/wiki/platforms/core) Data.

**[back to top](#contributing-and-collaborating)**

## Courses

### Getting Started

*Courses, tutorials, guides and bootcamps*

- [100 Days of SwiftUI](https://www.hackingwithswift.com/100/swiftui) - Free collection of videos and [tutorials](/@harrisonqian/awesome/wiki/computer-science/tutorials) updated for iOS 15 and [Swift](/@harrisonqian/awesome/wiki/programming-languages/swift) 5.5.
- [Apple - Object-Oriented Programming with Objective-C](https://developer.apple.com/library/archive/documentation/Cocoa/Conceptual/OOP_ObjC/Introduction/Introduction.html)

---
*truncated — [full list on GitHub](https://github.com/vsouza/awesome-ios)*
