An open API service indexing awesome lists of open source software.

awesome-swift

A collaborative list of awesome Swift libraries and resources. Feel free to contribute!
https://github.com/matteocrippa/awesome-swift

Last synced: 10 days ago
JSON representation

Benchmark

Vim

  • xcprofiler - Command line utility to profile compilation time.

Boilerplates

Third party Guides

  • iOS project template - iOS project template with fastlane lanes, Travis CI jobs and GitHub integrations of Codecov, HoundCI for SwiftLint and Danger.
  • Model-View-Presenter template - A flexible and easy template created to speed up the development of your iOS application based on the MVP pattern.
  • Swift Module Template - An opinionated starting point for awesome, reusable modules.

Converters

Vim

  • Swiftify - Objective-C to Swift online code converter and Xcode extension.
  • Zolang - A DSL for generating code in multiple programming languages.

Dependency Managers

Vim

  • Accio - A SwiftPM based dependency manager for iOS & Co. with improvements over Carthage.
  • Carthage - A new dependency manager.
  • CocoaPods - The most used dependency manager.
  • Mint - A package manager that installs and runs Swift command line tools.
  • swift-package-manager - SPM is the Package Manager for the Swift Programming Language.
  • Swiftly - Swift CLI toolchain installer to install different versions of Swift.

Editor Support

Emacs

  • swift-mode - Emacs support, including partial flycheck error support.

Google Colaboratory

Vim

Guides

Newsletter

Official Guides

Style Guides

  • LinkedIn - LinkedIn's Official Style Guide.
  • Raywenderlich - Raywenderlich guide, a must read.
  • Airbnb - Airbnb's Official Style Guide.
  • Google - This style guide is based on Apple’s excellent Swift standard library style and also incorporates feedback from usage across multiple Swift projects within Google.

Third party Guides

Libs

Accessibility

  • Capable - Keep track of accessibility settings, leverage high contrast colors, and use scalable fonts to enable users with disabilities to use your app.

AI

  • CoreML-Models - A collection of unique Core ML Models.
  • DL4S - Automatic differentiation, fast tensor operations and dynamic neural networks from CNNs and RNNs to transformers.
  • OpenAI - Swift package for OpenAI public API.
  • Espresso - Compile transformers directly for Apple's Neural Engine.
  • Fazm - A voice-controlled AI agent for macOS using accessibility APIs and ScreenCaptureKit.
  • EdgeRunner - Fast, local LLM inference for Apple Silicon. Built in Swift and Metal from the ground up.
  • Open Agent SDK - Open-source Agent SDK with full agent loop, 34 built-in tools, sub-agent orchestration, MCP integration, and multi-provider LLM support.
  • swift-coding-agent - A terminal coding agent with subagents and context compaction.

Algorithm

  • Algorithm - A toolset for writing algorithms and probability models.
  • BTree - Fast sorted collections for Swift using in-memory B-trees.
  • swift-algorithm-club - Algorithms and data structures, with explanations.
  • SwiftLCS - implementation of the longest common subsequence (LCS) algorithm.

Analytics

  • Aptabase - Open Source, Privacy-First and Simple Analytics for Swift Apps.
  • Tracker Aggregator - Versatile analytics abstraction layer.
  • Umbrella - Analytics abstraction layer.
  • Scout - Production-grade logging SDK for iOS apps using CloudKit as a backend.

Animation

  • Advance - A powerful animation framework for iOS, tvOS, and OS X.
  • Ease - Animate everything with Ease.
  • EasyAnimation - A library to take the power of UIView.animateWithDuration(_:, animations:...) to a whole new level.
  • FlightAnimator - Natural Blocks Based Core Animation Framework.
  • Gemini - Gemini is rich scroll based animation framework.
  • IBAnimatable - Design and prototype UI, interaction, navigation, transition and animation for App Store ready Apps in Interface Builder with IBAnimatable.
  • Interpolate - Interpolation framework for creating interactive gesture-driven animations.
  • lottie-ios - An iOS library to natively render After Effects vector animations.
  • Pastel - Gradient animation effect like Instagram.
  • Poi - Poi makes you use card UI like tinder UI .You can use it like tableview method.
  • Presentation - A library to help you to make tutorials, release notes and animated pages.
  • Sica - Simple Interface Core Animation. Run type-safe animation sequencially or parallelly.
  • Spring - A library to simplify iOS animations.
  • spruce-ios - Choreograph animations on the screen.
  • Stellar - A Physical animation library.
  • TheAnimation - Type-safe CAAnimation wrapper. It makes preventing to set wrong type values.
  • ViewAnimator - Brings your UI to life with just one line.
  • YapAnimator - Your fast and friendly physics-based animation system.
  • Pulsator - Pulse animation for iOS.
  • AnimatedGradient - Animated linear gradient library written with SwiftUI
  • ChainPageCollectionView - Fancy two-level collection view layout and animation.
  • CocoaSprings - Interactive spring animations for iOS/macOS.
  • Comets - Animating Particles.
  • Elephant - Elegant SVG animation kit.
  • SpriteKitEasingSwift - Better Easing for SpriteKit.

API

App Routing

  • Appz - Launch external apps and deeplink with ease.
  • Crossroad - 🚍 Crossroad is an URL router focused on handling Custom URL Schemes.
  • LightRoute - Routing between VIPER modules.
  • Linker - Lightweight way to handle internal and external deeplinks for iOS.
  • RxFlow - RxFlow is a navigation framework for iOS applications based on a Reactive Flow Coordinator pattern.
  • SwiftCurrent - Manage complex workflows wherever Swift can be built. It comes with built-in support for UIKit, Storyboards, and SwiftUI.
  • SwiftRouter - A URL Router for iOS.
  • URLNavigator - Elegant URL Routing.
  • MonarchRouter - Declarative state- and URL-based router. Complex automatic View Controllers hierarchy transitions. Time-tested server-side conventions.
  • SwiftUIRoutes - A minimal and flexible router for SwiftUI apps.

App Store

  • Apphud - Lightweight library to easily handle auto-renewable subscriptions with no backend required.
  • merchantkit - A modern In-App Purchases management framework for iOS.
  • SwiftyStoreKit - Lightweight In App Purchases framework.
  • AppReview - A tiny library to request review on the AppStore via SKStoreReviewController.
  • InAppPurchase - A Simple, Lightweight and Safe framework for In App Purchase.
  • Flare - A framework that simplifies working with in-app purchases on iOS, macOS, tvOS, and watchOS, with full support for both StoreKit 1 and StoreKit 2.

Audio

  • AudioKit - Powerful audio synthesis, processing and analysis, without the steep learning curve.
  • AudioPlayer - A wrapper around AVPlayer with some cool features.
  • Beethoven - An audio processing library for pitch detection of musical signals.
  • FDSoundActivatedRecorder - Start recording when the user speaks.
  • FDWaveformView - An easy way to display an audio waveform in your app.
  • ModernAVPlayer - Persistence AVPlayer to resume playback after bad network connection even in background mode.
  • SwiftySound - Simple library that lets you play sounds with a single line of code.
  • voice-overlay-ios - An overlay that gets your user’s voice permission and input as text in a customizable UI.
  • AudioPlayerSwift - AudioPlayer is a simple class for playing audio (basic and advanced usage) in iOS, OS X and tvOS apps.
  • SwiftAudioPlayer - Simple audio player for iOS that streams and performs realtime audio manipulations with AVAudioEngine.
  • MusicKit - A framework for composing and transforming music.
  • FluidAudio - SDK for real-time speaker diarization and identification on iOS/macOS, with CoreML models converted directly from PyTorch to leverage Apple Neural Engine for better performance on older devices.
  • Soundable - Soundable allows you to play sounds, single and in sequence, in a very easy way.

Augmented Reality

  • ARHeadsetKit - High-level framework for using $5 Google Cardboard to replicate Microsoft Hololens.
  • ARVideoKit - Capture & record ARKit videos, photos, Live Photos, and GIFs.
  • ARKit-Navigation - Navigation in augmented reality with MapKit.
  • ARKit-CoreLocation - Combines the high accuracy of AR with the scale of GPS data.

Authentication

  • Cely - A Plug-n-Play login framework.
  • LinkedInSignIn - Simple view controller to log in and retrieve an access token from LinkedIn.
  • LoginKit - LoginKit is a quick and easy way to add a Login/Signup UX to your iOS app.
  • ReCaptcha - [In]visible ReCaptcha for iOS.
  • SpotifyLogin - Authenticate with the Spotify API.

Bots

  • Telegram Bot SDK - Unofficial SDK.
  • Telegrammer - Open-source framework for Telegram Bots developers. It was built on top of Apple/SwiftNIO which help to demonstrate excellent performance.

Cache

  • AwesomeCache - Manage cache easy.
  • Cache - Nothing but Cache.
  • Cachyr - A small key-value data cache for iOS, macOS and tvOS.
  • Carlos - A simple but flexible cache.
  • EVURLCache - If you want to make your app still works when it's offline.
  • MemoryCache - Type-safe memory cache.
  • CachyKit - A Caching Library that can cache JSON, Image, Zip or AnyObject with expiry date/TTYL and force refresh.
  • Monstra - Memory cache framework with TTL, priority-based eviction, and avalanche protection.

Chart

  • ScrollableGraphView - Adaptive scrollable graph view for iOS to visualise simple discrete datasets.
  • SwiftChart - A simple line and area charting library for iOS. Supports multiple series, partially filled series and touch events.
  • TKRadarChart - A customizable radar chart.
  • Charts - Beautiful charts for iOS/tvOS/OSX (port of MPAndroidChart).
  • ChartView - Swift package for displaying beautiful charts effortlessly
  • FLCharts - Easy to use and highly customizable charts library for iOS.
  • SwiftUICharts - A charts / plotting library for SwiftUI. Works on macOS, iOS, watchOS, and tvOS and has accessibility and Localization features built in.
  • SwiftCharts - Highly customizable charts for iOS.

Chat

  • Chatto - A lightweight framework to build chat applications.
  • InputBarAccessoryView - A simple and easily customizable InputAccessoryView for making powerful input bars with autocomplete and attachments.
  • MessageKit - A community-driven replacement for JSQMessagesViewController.
  • ExyteChat - SwiftUI Chat UI framework with fully customizable message cells, input view, and a built-in media picker
  • MessengerKit - A UI framework for building messenger interfaces.
  • Real-time Chat with Firebase - Functional real-time chat app with Firebase Firestore using MessageKit.
  • Real-time Chat with Firebase - Functional real-time chat app with Firebase Firestore using MessageKit.
  • swiftui-messaging-ui - Primitive SwiftUI chat UI component with stable prepending for loading older messages without scroll jumps.

Colors

  • ChromaColorPicker - An intuitive and fun iOS color picker.
  • DynamicColor - An extension to manipulate colors easily.
  • Hue - Hue is the all-in-one coloring utility that you'll ever need.
  • PrettyColors - Styles and colors text in the Terminal with ANSI escape codes. Conforms to ECMA Standard 48.
  • SheetyColors - An action sheet styled color picker for iOS.
  • SwiftHEXColors - HEX color handling as an extension for UIColor.
  • UIColor-Hex-Swift - Hex to UIColor converter.
  • ColorKit - Advanced color manipulation for iOS.
  • Gradients - A curated collection of splendid 180+ gradients.
  • UIGradient - A simple and powerful library for using gradient layer, image, color.

Command Line

  • Commander - Compose beautiful command line interfaces.
  • Guaka - The smart and beautiful (POSIX compliant) command line framework.
  • nef - A set of command line tools that lets you have compile time verification of your documentation written as Xcode Playground.
  • Swiftline - A set of tools to help you create command line applications.
  • SwiftShell - A library for creating command-line applications and running shell commands.
  • SwiftyTextTable - A lightweight library to generate text tables.
  • Ashen - A framework for writing terminal applications in Swift. Based on The Elm Architecture.
  • LineNoise - A zero-dependency replacement for readline.
  • Progress.swift - Add beautiful progress bars to your command line.
  • Swift Argument Parser - Straightforward, type-safe argument parsing for Swift.
  • SwiftCLI - A powerful framework that can be used to develop a CLI.
  • Mocker - Docker-compatible container CLI for macOS, built on Apple's Containerization framework.

Concurrency

  • AsyncNinja - A complete set of concurrency and reactive programming primitives.
  • Futures - Lightweight promises for iOS, macOS, tvOS, watchOS, and server-side.
  • GroupWork - Easy concurrent, asynchronous tasks.
  • Hydra - Promises & Await - Write better async code.
  • Queuer - A queue manager, built on top of OperationQueue and Dispatch (aka GCD).
  • SwiftCoroutine - Coroutines for iOS, macOS and Linux.
  • Venice - Communicating sequential processes (CSP), Linux ready.
  • async+ - A chainable interface for Swift 5.5's async/await.
  • Throttler - Throttle massive number of asynchronous inputs in a single drop of one line API.
  • AsyncQueue - A library of queues that enable sending ordered tasks from synchronous to asynchronous contexts.

Data Management

  • CoreStore - simple and elegant way to handle Core Data.
  • DataKernel - DataKernel is a minimalistic wrapper around Core Data stack to ease persistence operations. No external dependencies.
  • Graph - An elegant data-driven framework for Core Data.
  • JSQCoreDataKit - A swifter Core Data stack.
  • JustPersist - Easiest and safest way to do persistence on iOS with Core Data support out of the box.
  • Skopelos - A minimalistic, thread safe, non-boilerplate and super easy to use version of Active Record on Core Data.
  • SugarRecord - Helps with Core Data and Realm.
  • CodableCSV - Read and write CSV files row-by-row or through Swift's Codable interface.
  • AlamofireObjectMapper - An Alamofire extension which converts JSON response data into objects using ObjectMapper.