[[
wikihub
]]
Search
⌘K
Explore
People
For Agents
Sign in
Explore
People
For Agents
Sign in
@harrisonqian / Awesome / wiki/platforms/ios.md
Suggest edit
Cancel
Submit suggestion
Title
Name
Note
--- 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)*