Browse free open source Swift Libraries for Apple iPhone and projects below. Use the toggles on the left to filter open source Swift Libraries for Apple iPhone by OS, license, language, programming language, and project status.

  • Try Google Cloud Risk-Free With $300 in Credit Icon
    Try Google Cloud Risk-Free With $300 in Credit

    No hidden charges. No surprise bills. Cancel anytime.

    Use your credit across every product. Compute, storage, AI, analytics. When it runs out, 20+ products stay free. You only pay when you choose to.
    Start Free
  • Gemini 3 and 200+ AI Models on One Platform Icon
    Gemini 3 and 200+ AI Models on One Platform

    Access Google's best plus Claude, Llama, and Gemma. Fine-tune and deploy from one console.

    Build generative AI apps with Vertex AI. Switch between models without switching platforms.
    Start Free
  • 1
    AAChartKit Swift

    AAChartKit Swift

    An elegant modern declarative data visualization chart framework

    An elegant modern declarative data visualization chart framework for iOS, iPadOS and macOS. Extremely powerful, supports line, spline, area, areaspline, column, bar, pie, scatter, angular gauges, arearange, areasplinerange, columnrange, bubble, box plot, error bars, funnel, waterfall and polar chart types. AAInfographics is the Swift language version of AAChartKit which is object-oriented, a set of easy-to-use, extremely elegant graphics drawing controls,based on the popular open source front-end chart library Highcharts. It makes it very fast to add interactive charts to your mobile projects. It supports single touch-drag for data inspection, multi-touch for zooming, and advanced responsiveness for your apps. Unlike previous imperative programming techniques, drawing any custom chart in AAChartKit, you don't need to care about the inner implementation details which is annoying && boring. Describe what you want, you will get what you described.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 2
    Amazon Chime SDK for iOS

    Amazon Chime SDK for iOS

    An iOS client library for integrating multi-party communications

    The Amazon Chime SDK for iOS makes it easy to add collaborative audio calling, video calling, and screen share viewing features to iOS applications by using the same infrastructure services that power meetings on the Amazon Chime service. This Amazon Chime SDK for iOS works by connecting to meeting session resources that you have created in your AWS account. The SDK has everything you need to build custom calling and collaboration experiences in your iOS application, including methods to: configure meeting sessions, list, and select audio devices, switch video devices, start and stop screen share viewing, and receive callbacks when media events occur such as volume changes, and manage meeting features such as audio mute and video tile bindings. You can integrate Amazon Chime SDK in your project from either CocoaPods or binaries through Github release.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 3
    BulletinBoard

    BulletinBoard

    General-purpose contextual cards for iOS

    BulletinBoard is an iOS library that generates and manages contextual cards displayed at the bottom of the screen. It is especially well suited for quick user interactions such as onboarding screens or configuration. It has an interface similar to the cards displayed by iOS for AirPods, Apple TV/HomePod configuration and NFC tag scanning. It supports both the iPhone, iPhone X and the iPad. It has built-in support for accessibility features such as VoiceOver and Switch Control.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 4
    Carbon library

    Carbon library

    A declarative library for building component-based user interfaces

    A declarative library for building component-based user interfaces in UITableView and UICollectionView. Provides a declarative design with the power of diffing algorithm for building list UIs. Declare the component once, it can be reused regardless kind of the list element. Solves the various problems by architecture and algorithm without destructing UIKit. Carbon is a library for building component-based user interfaces in UITableView and UICollectionView inspired by SwiftUI and React. This make it painless to build and maintain the complex UIs. Since components made with Carbon can be works directly on SwiftUI, the cost of future migration can be greatly reduced. Uses DifferenceKit which is highly optimized based on Paul Heckel’s paper for diffing. Declarative design and diffing algorithm make your code more predictable, debugging easier and providing beautiful animations to users.
    Downloads: 0 This Week
    Last Update:
    See Project
  • MongoDB Atlas runs apps anywhere Icon
    MongoDB Atlas runs apps anywhere

    Deploy in 115+ regions with the modern database for every enterprise.

    MongoDB Atlas gives you the freedom to build and run modern applications anywhere—across AWS, Azure, and Google Cloud. With global availability in over 115 regions, Atlas lets you deploy close to your users, meet compliance needs, and scale with confidence across any geography.
    Start Free
  • 5
    CocoaMQTT

    CocoaMQTT

    MQTT 5.0 client library for iOS and macOS written in Swift

    MQTT v3.1.1 and v5.0 client library for iOS/macOS/tvOS written with Swift 5. IOS Target: 9.0 or above OSX Target: 10.12 or above TVOS Target: 10.0 or above. To integrate CocoaMQTT into your Xcode project using CocoaPods, you need to modify you Podfile. On your application targets “General” settings tab, in the "Frameworks, Libraries, and Embedded content" section, drag and drop CocoaMQTT.xcframework, CocoaAsyncSocket.xcframework and Starscream.xcframework from the Carthage/Build folder on disk. Then select "Embed & Sign".
    Downloads: 0 This Week
    Last Update:
    See Project
  • 6
    Design Patterns in Swift

    Design Patterns in Swift

    Design Patterns implemented in Swift

    Design-Patterns-In-Swift is a repository that translates classic software engineering design patterns (from sources like the Gang of Four) into Swift code examples, so you can see how those patterns look in a modern, strongly typed, object-/protocol-oriented language. It covers creational, structural, and behavioral patterns: singletons, factories, decorators, observers, strategy, command, mediator, and more. For each pattern, you’ll typically see one or more Swift implementations, commentary on where it makes sense in a Swift architecture, and caveats about when you might prefer pure protocol composition or using functional patterns instead. The examples aim to be readable and idiomatic—not overly abstract or contrived—so developers can adopt or adapt them directly.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 7
    Dynamic

    Dynamic

    Call hidden/private API in style, The Swift way

    Dynamic is an Objective-C library for dynamically interacting with private and public iOS APIs. It allows developers to access properties, methods, and classes that are not normally exposed, useful for runtime exploration and advanced debugging.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 8
    Google Toolbox for Mac

    Google Toolbox for Mac

    Google Toolbox for Mac

    Google Toolbox for Mac (GTMSession) is a comprehensive collection of open source Objective-C utilities and frameworks developed by Google to support macOS and iOS application development. It consolidates reusable code components drawn from various internal Google projects, offering developers a wide range of tools for building efficient, maintainable Apple platform software. The library includes modules for networking, logging, testing, data handling, and user interface extensions, helping developers avoid reinventing common functionality. Its modular design allows developers to integrate only the components they need, improving project flexibility and performance. With well-documented interfaces and consistent coding standards, Google Toolbox for Mac serves as a reliable foundation for both small and large-scale applications. It continues to be widely used across open source and internal projects that target Apple ecosystems.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 9
    HandyJSON

    HandyJSON

    A handy swift json-object serialization/deserialization library

    HandyJSON is a framework written in Swift which makes converting model objects( pure classes/structs ) to and from JSON easy on iOS. Compared with others, the most significant feature of HandyJSON is that it does not require the objects inherit from NSObject(not using KVC but reflection), nor implements a 'mapping' function(writing value to memory directly to achieve property assignment). HandyJSON is totally dependent on the memory layout rules inferred from Swift runtime code. We are watching it and will follow every bit if it changes. To support deserialization from JSON, a class/struct needs to conform to 'HandyJSON' protocol. It's truly protocol, not some class inherited from NSObject. For struct, since the compiler provides a default empty initializer, we use it for free. HandyJSON supports deserialization from the designated path of JSON.
    Downloads: 0 This Week
    Last Update:
    See Project
  • Forever Free Full-Stack Observability | Grafana Cloud Icon
    Forever Free Full-Stack Observability | Grafana Cloud

    Our generous forever free tier includes the full platform, including the AI Assistant, for 3 users with 10k metrics, 50GB logs, and 50GB traces.

    Built on open standards like Prometheus and OpenTelemetry, Grafana Cloud includes Kubernetes Monitoring, Application Observability, Incident Response, plus the AI-powered Grafana Assistant. Get started with our generous free tier today.
    Create free account
  • 10
    Hero iOS

    Hero iOS

    Elegant transition library for iOS & tvOS

    Hero is a library for building iOS view controller transitions. It provides a declarative layer on top of the UIKit’s cumbersome transition APIs—making custom transitions an easy task for developers. Hero is similar to Keynote’s Magic Move. It checks the heroID property on all source and destination views. Every matched view pair is then automatically transitioned from its old state to its new state. Hero can also construct animations for unmatched views. It is easy to define these animations via the heroModifiers property. Hero will run these animations alongside the Magic Move animations. All of these animations can be interactively controlled by user gestures. By default, Hero provides dynamic duration based on the Material Design Motion Guide. Duration is automatically determined by changes to distance and size—saving you the hassle, while providing consistent and delightful animations.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 11
    Iconic

    Iconic

    Auto-generated icon font library for iOS, watchOS and tvOS

    Iconic helps make icon fonts integration effortless on iOS, tvOS and watchOS. Its main component is in charge of auto-generating strongly typed Swift code with SwiftGen, compatible with Objective-C. You will interact with an auto-generated class under the name of {FontName}Icon.swift, which is a light abstraction of the IconDrawable.swift protocol. Some open-sourced icon fonts don't include the names of each of their glyphs. This could result in a non-descriptive enum, which can make things less intuitive for you when using Iconic. If you create your own icon font, make sure to properly name each glyph. You can construct an UIImage instance out of a font's icon and tint it. This may be very convenient for integrating with existing UIKit controls which expect UIImage objects already.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 12
    Jelly

    Jelly

    Library for animated, non-interactive & interactive transitions

    Jelly is a library for animated, non-interactive & interactive view controller transitions and presentations with a focus on a simple yet flexible API. With a few lines of source code, interactive UIViewController transitions and custom resizable UIViewController presentations can be created, without the use of the cumbersome UIKit Transitioning API. Interactive transitions can be activated for the slide and the cover transitions. If the transitions are to be interactive, only an InteractionConfiguration object has to be passed to the presentation. Here 3 parameters play an important role. First, the completion threshold, determines the percentage of the animation that is automatically completed as soon as the user finishes the interaction. The second parameter is the actual type of interaction. Jelly offers the .edge and the .canvas type. In a .edge transition, the user must execute the gesture from the edge of the screen.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 13
    KMM ViewModel

    KMM ViewModel

    Library to share Kotlin ViewModels with SwiftUI

    A library that allows you to share ViewModels between Android and iOS. The latest version of the library uses Kotlin version 1.9.22. Compatibility versions for older and/or preview Kotlin versions are also available. When subclassing your Kotlin ViewModel in Swift you might experience some issues in the way those ViewModels are cleared. Since currentTimeFlow is a StateFlow we don't ever expect it to fail, which is why we are using the assertNoFailure. However, in this case you'll notice that the publisher will fail with a JobCancellationException. The problem here is that before the TimeTravelViewModel is deinited it will already be cleared. Meaning the viewModelScope is cancelled and onCleared is called. This results in the Combine publisher outliving the underlying StateFlow collection.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 14
    LayoutKit

    LayoutKit

    LayoutKit is a fast view layout library for iOS, macOS, and tvOS

    LayoutKit is a fast view layout library for iOS, macOS, and tvOS. LinkedIn created LayoutKit because we have found that Auto Layout is not performant enough for complicated view hierarchies in scrollable views. LayoutKit is as fast as manual layout code and is significantly faster than Auto Layout.Layouts can be computed in a background thread so user interactions are not interrupted. Layouts are declared with immutable data structures. This makes layout code easier to develop, document, code review, test, debug, profile, and maintain. Layout results are immutable data structures so they can be precomputed in the background and cached to increase user perceived performance.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 15
    MaLiang

    MaLiang

    iOS painting and drawing library based on Metal

    MaLiang is a painting framework based on Metal. It supports drawing and handwriting with customized textures. The name of "MaLiang" comes from a boy who had a magical brush in a Chinese ancient fairy story. A Canvas is the basic component of MaLiang. You will paint all things on it. Canvas extends from MetalView, which extends from MTKView. MetalView handles all the logic with MetalKit and hides them from you. MaLiang supports the automatic adjustment of stroke size with painting force. 3D Touch is supported by default, and simulated force will be setup on devices that do not support this. forceSensitive is the property that force affects the stroke size. It should be set between 0 to 1. the smaller the value is, the less sensitive will be. if sets to 0, then force will not affect the stroke size.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 16
    Motion

    Motion

    A library used to create beautiful animations and transitions for iOS

    Welcome to Motion, a library used to create beautiful animations and transitions for views, layers, and view controllers. Motion is designed for beginner to expert developers. For beginners, you will be exposed to very powerful APIs that would take time and experience to develop on your own, and experts will appreciate the time saved by using Motion. You will learn how to use Motion with a general introduction to fundamental concepts and easy-to-use code snippets. Motion offers default transitions that may be used by UINavigationControllers, UITabBarControllers, and presenting UIViewControllers. Motion provides the building blocks necessary to create stunning animations without much effort. Motion's animation API will make maintenance a breeze and changes even easier. To create an animation, use the animate method of a view or layer and pass in a list of MotionAnimation structs. MotionAnimation structs are configurable values that describe how to animate a property.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 17
    Popovers

    Popovers

    A library to present popovers. Simple, modern, and highly customizable

    A library to present popovers. Present any view above your app's main content. Attach to source views or use picture-in-picture positioning. Display multiple popovers at the same time with smooth transitions. Supports SwiftUI, UIKit, and multitasking windows on iPadOS. Highly customizable API that's super simple — just add .popover. Drop-in replacement for iOS 14's Menu that works on iOS 13. SwiftUI-based core for a lightweight structure. 0 dependencies. It's 2023 — about time that popovers got interesting!
    Downloads: 0 This Week
    Last Update:
    See Project
  • 18
    REEL SEARCH

    REEL SEARCH

    A UI controller that allows you to choose options from a list

    Reel Search is a Swift UI controller that allows you to choose options from a list. We specialize in the designing and coding of custom UI for Mobile Apps and Websites. Once the designers have created a gorgeous UI, you will need a team that will be able to turn this design into a working mobile application or website which will look and work exactly the way you have approved it at the design stage. Ramotion has been creating interfaces for many years and now we are ready to turn them into working mobile, web, and VR apps. Recently, our mobile application developers have released a series of Swift controls, which quickly gained popularity among mobile developers on Github and allowed Ramotion to become the # 1 contributor to Swift projects on the platform.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 19
    Runtime

    Runtime

    A Swift Runtime library for viewing type info

    A Swift Runtime library for viewing type info, and the dynamic getting and setting of properties. Runtime is a Swift library to give you more runtime abilities, including getting type metadata, setting properties via reflection, and type construction for native swift objects. TypeInfo exposes metadata about native Swift structs, protocols, classes, tuples and enums. It captures the properties, generic types, inheritance levels, and more.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 20
    Sharaku

    Sharaku

    Image filtering UI library like Instagram.

    Image filtering UI library like Instagram. To run the example project, clone the repo, and run pod install from the Example directory first.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 21
    Spring (MengTo)

    Spring (MengTo)

    A library to simplify iOS animations in Swift

    Spring is a delightful animation library for iOS that turns complex Core Animation sequences into simple, declarative presets you can trigger with a few lines of Swift. It exposes a large set of ready-made animations—springy pops, fades, slides, morphs, and attention-grabbers—so designers and developers can prototype polished interactions rapidly. Thanks to Interface Builder support (via inspectable properties), many animations can be configured visually and previewed live, shortening the design-implementation loop. Under the hood, Spring abstracts timing functions, damping, velocity, and chaining so you get natural motion without juggling dozens of CAAnimation parameters. You can sequence or group effects, apply them conditionally, and reuse presets across views to keep a consistent motion language in your app. The overall philosophy is to make delightful motion accessible: even if you’re not an animation expert, you can ship interactions that feel crisp, modern, and on-brand.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 22
    Starscream

    Starscream

    Websockets in swift for iOS and OSX

    Starscream is a conforming WebSocket (RFC 6455) library in Swift. Once imported, you can open a connection to your WebSocket server. Note that socket is probably best as a property, so it doesn't get deallocated right after being setup. After you are connected, there is either a delegate or closure you can use for process WebSocket events. The writeData method gives you a simple way to send Data (binary) data to the server. The writeString method is the same as writeData, but sends text/string. The writePing method is the same as write, but sends a ping control frame. Starscream will automatically respond to incoming ping control frames so you do not need to manually send pongs. You can override the default websocket headers, add your own custom ones and set a timeout. Update docs on how to load certificates and public keys into an app bundle, use the builtin pinner and TrustKit.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 23
    SwiftChart

    SwiftChart

    Line and area chart library for iOS

    Line and area chart library for iOS. The chart can be initialized from the Interface Builder. Drag a normal View into a View Controller and assign to it the Chart Custom Class from the Identity Inspector. As you can see, as default the values on the x-axis are the progressive indexes of the passed array. You can customize those values by passing an array of (x: Double, y: Double) tuples to the series initializer. Use the chart.xLabels property to make the x-axis showing more labels than those inferred from the actual data. To make the chart respond to touch events, implement the ChartDelegate protocol in your class, e.g. a View Controller, and then set the chart’s delegate property.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 24
    Time

    Time

    Type-safe time calculations in Swift

    Type-safe time calculations in Swift. Time is not just a bunch of Double conversion functions. The main advantage of it is that all time units are strongly-typed. Starting with Xcode 11, Time is officially available only via Swift Package Manager. Of course, you always have an option of just copying-and-pasting the code - Time is just two files, so feel free.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 25
    TweenKit

    TweenKit

    Animation library for iOS in Swift

    TweenKit is a powerful animation library that allows you to animate (or 'tween') anything. TweenKit's animations are also scrubbable, perfect for building awesome onboarding experiences! By adding conformance to the Tweenable protocol, anything can be animated. You decide what it means to 'tween' your object, making this a flexible approach.
    Downloads: 0 This Week
    Last Update:
    See Project
  • Previous
  • You're on page 1
  • 2
  • Next
MongoDB Logo MongoDB