Top 50 Awesome List

vsouza/awesome-ios

Platforms  3 months ago  39.7k
A curated list of awesome iOS ecosystem, including Objective-C and Swift Projects
View byDAY/WEEK/README
View on Github
Awesome

awesome Build Status Buy Me a Coffee

Content

Courses

Getting Started

Courses, tutorials and guides

Accessibility

Frameworks that help to support accessibility features and enable people with disabilities to use your app

  • Capablestars217 - Track accessibility features to improve your app for people with certain disabilities.

Alexa

Frameworks that help to support writing custom alexa skills in swift

Analytics

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

  • Instabug - In-app feedback, Bug and Crash reporting, Fix Bugs Faster through user-steps, video recordings, screen annotation, network requests logging.
  • Mixpanel - Advanced analytics platform.
  • Localytics - Brings app marketing and analytics together.
  • Answers by Fabric - Answers gives you real-time insight into people’s experience in your app.
  • ARAnalyticsstars1.8k - Analytics abstraction library offering a sane API for tracking events and user data.
  • Segmentstars377 - The hassle-free way to integrate analytics into any iOS application.
  • MOCA Analytics - Paid cross-platform analytics backend.
  • Countly - Open source, mobile & web analytics, crash reports and push notifications platform for iOS & Android.
  • Abbistars5 - A Simple SDK for developers to manage and maximise conversions of all in-app promotions.
  • devtodev - Comprehensive analytics service that improves your project and saves time for product development.
  • Bugsnag - Error tracking with a free tier. Error reports include data on device, release, user, and allows arbitrary data.
  • Inapptics - Helps analyze and visualize user behavior in mobile apps. Provides visual user journeys, heatmaps and crash replays.
  • Matomostars361 - The MatomoTracker is an iOS, tvOS and macOS SDK for sending app analytics to a Matomo server.
  • Sentry - Sentry provides self-hosted and cloud-based error monitoring that helps all software teams discover, triage, and prioritize errors in real-time.
  • Shake - In-app feedback and bug reporting tool. Fix app bugs up to 50x faster with detailed device data, repro steps, video recording, black box data, network requests and custom logging.

App Routing

Elegant URL routing, navigation frameworks, deep links and more

  • WAAppRoutingstars590 - iOS routing done right. Handles both URL recognition and controller displaying with parsed parameters. All in one line, controller stack preserved automatically!
  • DeepLinkKitstars3.4k - A splendid route-matching, block-based way to handle your deep links.
  • IntentKitstars1.8k - An easier way to handle third-party URL schemes in iOS apps.
  • JLRoutesstars5.6k - URL routing library for iOS with a simple block-based API.
  • IKRouterstars94 - URLScheme router than supports auto creation of UIViewControllers for associated url parameters to allow creation of navigation stacks
  • Appz - Easily launch and deeplink into external applications, falling back to web if not installed.
  • URLNavigatorstars2.9k - Elegant URL Routing for Swift
  • Marshroutestars212 - Marshroute is an iOS Library for making your Routers simple but extremely powerful.
  • SwiftRouterstars272 - A URL Router for iOS.
  • Routerstars458 - Simple Navigation for iOS.
  • ApplicationCoordinatorstars767 - Coordinator is an object that handles navigation flow and shares flow’s handling for the next coordinator after switching on the next chain.
  • RxFlowstars1.7k - Navigation framework for iOS applications based on a Reactive Flow Coordinator pattern.
  • Linkerstars133 - Lightweight way to handle internal and external deeplinks for iOS.
  • CoreNavigationstars69 - Navigate between view controllers with ease.
  • DZURLRoutestars73 - Universal route engine for iOS app, it can handle URLScheme between applications and page route between UIViewController.
  • Crossroadstars390 - 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.
  • ZIKRouterstars615 - An interface-oriented router for discovering modules and injecting dependencies with protocol in OC & Swift, iOS & macOS. Handles route in a type safe way.
  • RouteComposerstars656 - Library that helps to handle view controllers composition, routing and deeplinking tasks.
  • LiteRoutestars95 - Easy transition between VIPER modules, implemented on pure Swift.
  • Composable Navigatorstars525 - An open source library for building deep-linkable SwiftUI applications with composition, testing and ergonomics in mind
  • SwiftCurrentstars270 - A library for managing complex workflows.

Apple TV

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

Architecture Patterns

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

  • SwiftyVIPERstars115 - Makes implementing VIPER architecture much easier and cleaner.
  • CleanArchitectureRxSwiftstars3.4k - Example of Clean Architecture of iOS app using RxSwift.
  • Viperitstars481 - Viper Framework for iOS. Develop an app following VIPER architecture in an easy way. Written and tested in Swift.
  • Reactantstars370 - Reactant is a reactive architecture for iOS.
  • YARCH - More clean alternative to VIPER with unidirectional data flow (flux-like).
  • 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.
  • Tempurastars683 - A holistic approach to iOS development, inspired by Redux and MVVM.
  • VIPER Module Generatorstars67 - A Clean VIPER Modules Generator with comments and predfined functions.
  • MMVMistars10 - A Validation Model for MVC and MVVM Design Patterns in iOS Applications.
  • ios-architecturestars1.2k - A collection of iOS architectures - MVC, MVVM, MVVM+RxSwift, VIPER, RIBs and many others.
  • Clean Architecture for SwiftUI + Combinestars3.5k - A demo project showcasing the production setup of the SwiftUI app with Clean Architecture.
  • Spinstars115 - A universal implementation of a Feedback Loop system for RxSwift, ReactiveSwift and Combine

ARKit

Library and tools to help you build unparalleled augmented reality experiences

Authentication

Oauth and Oauth2 libraries, social logins and captcha tools.

Blockchain

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

  • Web3.swiftstars424 - Web3 library for interacting with the Ethereum blockchain.
  • web3swift - Elegant Web3js functionality in Swift. Native ABI parsing and smart contract interactions.
  • EthereumKitstars448 - EthereumKit is a free, open-source Swift framework for easily interacting with the Ethereum.
  • BitcoinKitstars777 - Bitcoin protocol toolkit for Swift, BitcoinKit implements Bitcoin protocol in Swift. It is an implementation of the Bitcoin SPV protocol written (almost) entirely in swift.
  • EtherWalletKitstars131 - Ethereum Wallet Toolkit for iOS - You can implement Ethereum wallet without a server and blockchain knowledge.
  • CoinpaprikaAPIstars30 - Coinpaprika API client with free & frequently updated market data from the world of crypto: coin prices, volumes, market caps, ATHs, return rates and more.
  • Bitcoin-Swift-Kitstars211 - Full Bitcoin library written on Swift. Complete SPV wallet implementation for Bitcoin, Bitcoin Cash and Dash blockchains.

Bridging

Sharing code between Objective-C and Swift, iOS and macOS, Javascript and Objective-C.

  • RubyMotion - RubyMotion is a revolutionary toolchain that lets you quickly develop and test native iOS and macOS applications for iPhone, iPad and Mac, all using the Ruby language.
  • JSPatchstars11.3k - JSPatch bridge Objective-C and Javascript using the Objective-C runtime. You can call any Objective-C class and method in JavaScript by just including a small engine. JSPatch is generally use for hotfix iOS App.
  • WebViewJavascriptBridgestars14k - An iOS/macOS bridge for sending messages between Obj-C and JavaScript in UIWebViews/WebViews.
  • MAIKitstars140 - A framework for sharing code between iOS and macOS.
  • Xamarin - Xamarin is a free, cross-platform, open-source platform that lets you quickly develop and test native iOS, watchOS and macOS applications for iPhone, iPad, Watch and Mac, all using the C# language.

Cache

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

Charts

Beautiful, Easy and Fully customized charts

Code Quality

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

  • Bootstrapstars2k - iOS project bootstrap aimed at high quality coding.
  • KZAssertsstars102 - Set of custom assertions that automatically generate NSError's, allow for both Assertions in Debug and Error handling in Release builds, with beautiful DSL.
  • PSPDFUIKitMainThreadGuard - Simple snippet generating assertions when UIKit is used on background threads.
  • ocstylestars256 - Objective-C style checker.
  • spacecommanderstars1.1k - Commit fully-formatted Objective-C code as a team without even trying.
  • DWURecyclingAlertstars568 - Optimizing UITableViewCell For Fast Scrolling.
  • Tailorstars1.4k - Cross-platform static analyzer for Swift that helps you to write cleaner code and avoid bugs.
  • SwiftCopstars544 - SwiftCop is a validation library fully written in Swift and inspired by the clarity of Ruby On Rails Active Record validations.
  • Trackablestars145 - Trackable is a simple analytics integration helper library. It’s especially designed for easy and comfortable integration with existing projects.
  • MLeaksFinderstars5.2k - Find memory leaks in your iOS app at develop time.
  • HeapInspector-for-iOSstars1.8k - Find memory issues & leaks in your iOS app without instruments.
  • FBMemoryProfilerstars3.4k - iOS tool that helps with profiling iOS Memory usage.
  • FBRetainCycleDetectorstars4.1k - iOS library to help detecting retain cycles in runtime.
  • Buglifestars498 - Awesome bug reporting for iOS apps.
  • Warnings-xcconfigstars439 - An xcconfig (Xcode configuration) file for easily turning on a boatload of warnings in your project or its targets.
  • Aardvarkstars254 - Aardvark is a library that makes it dead simple to create actionable bug reports.
  • Statsstars167 - In-app memory usage monitoring.
  • GlueKitstars363 - A type-safe observer framework for Swift.
  • SwiftFormatstars5.8k - A code library and command-line formatting tool for reformatting Swift code.
  • PSTModernizerstars216 - Makes it easier to support older versions of iOS by fixing things and adding missing methods.
  • Bugsee - In-app bug and crash reporting with video, logs, network traffic and traces.
  • Fallbackstars43 - Syntactic sugar for nested do-try-catch.
  • ODUIThreadGuardstars694 - A guard to help you check if you make UI changes not in main thread.
  • IBAnalyzerstars957 - Find common xib and storyboard-related problems without running your app or writing unit tests.
  • DecouplingKitstars140 - decoupling between modules in your iOS Project.
  • Cluestars279 - Flexible bug report framework for iOS with screencast, networking, interactions and view structure.
  • WeakableSelfstars70 - A Swift micro-framework to encapsulate [weak self] and guard statements within closures.

Linter

Static code analyzers to enforce style and conventions.

  • OCLintstars3.5k - Static code analysis tool for improving quality and reducing defects.
  • Taylorstars300 - Measure Swift code metrics and get reports in Xcode, Jenkins and other CI platforms.
  • Swiftlintstars16.2k - A tool to enforce Swift style and conventions.
  • IBLinterstars941 - A linter tool for Interface Builder.
  • SwiftLinterstars4 - Share lint rules between projects and lint changed files with SwiftLint.
  • AnyLintstars115 - Lint anything by combining the power of Swift & regular expressions.

Color

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

Command Line

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

  • Swiftlinestars1.2k - Swiftline is a set of tools to help you create command line applications.
  • Commanderstars1.5k - Compose beautiful command line interfaces in Swift.
  • ColorizeSwiftstars273 - Terminal string styling for Swift.
  • Guakastars1.1k - The smartest and most beautiful (POSIX compliant) Command line framework for Swift.
  • Marathonstars1.9k - Marathon makes it easy to write, run and manage your Swift scripts.
  • CommandCougarstars51 - An elegant pure Swift library for building command line applications.
  • Crayonstars59 - Terminal string styling with expressive api and 256/TrueColor support.
  • SwiftShellstars949 - A Swift framework for shell scripting and running shell commands.
  • SourceDocsstars340 - Command Line Tool that generates Markdown documentation from inline source code comments.
  • ModuleInterfacestars71 - Command Line Tool that generates the Module's Interface from a Swift project.

Concurrency

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

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

Core Data

Core data Frameworks, wrappers, generators and boilerplates.

  • Ensemblesstars1.6k - A synchronization framework for Core Data.
  • Mogeneratorstars3k - Automatic Core Data code generation.
  • MagicalRecordstars10.9k - Super Awesome Easy Fetching for Core Data.
  • CoreStorestars3.4k - Powerful Core Data framework for Incremental Migrations, Fetching, Observering, etc.
  • Core Data Query Interfacestars31 A type-safe, fluent query framework for Core Data.
  • Graphstars873 - An elegant data-driven framework for CoreData in Swift.
  • CoreDataDandystars33 - A feature-light wrapper around Core Data that simplifies common database operations.
  • Syncstars2.5k - Modern Swift JSON synchronization to Core Data.
  • AlecrimCoreDatastars785 - A powerful and simple Core Data wrapper framework written in Swift.
  • AERecordstars308 - Super awesome Core Data wrapper in Swift.
  • CoreDataStackstars561 - The Big Nerd Ranch Core Data Stack.
  • JSQCoreDataKitstars595 - A swifter Core Data stack.
  • Skopelosstars237 - 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.
  • Cadmiumstars123 - A complete swift framework that wraps CoreData and helps facilitate best practices.
  • DataKernelstars16 - Simple CoreData wrapper to ease operations.
  • DATAStackstars216 - 100% Swift Simple Boilerplate Free Core Data Stack. NSPersistentContainer.
  • JustPersiststars167 - JustPersist is the easiest and safest way to do persistence on iOS with Core Data support out of the box.
  • PrediKitstars544 - An NSPredicate DSL for iOS, macOS, tvOS, & watchOS. Inspired by SnapKit and lovingly written in Swift.
  • PredicateFlowstars100 - 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.
  • CloudCorestars112 - Robust CloudKit synchronization: offline editing, relationships, shared and public databases, field-level deltas, and more.

Database

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

  • Realmstars15.4k - The alternative to CoreData and SQLite: Simple, modern and fast.
  • YapDatabasestars3.3k - YapDatabase is an extensible database for iOS & Mac.
  • Couchbase Mobile - Couchbase document store for mobile with cloud sync.
  • FMDBstars13.7k - A Cocoa / Objective-C wrapper around SQLite.
  • FCModelstars1.7k - An alternative to Core Data for people who like having direct SQL access.
  • Zephyrstars798 - Effortlessly synchronize NSUserDefaults over iCloud.
  • Prephirencesstars556 - Prephirences is a Swift library that provides useful protocols and convenience methods to manage application preferences, configurations and app-state.
  • Storezstars66 - S