Skip to content

Server-sent events (SSE) client implementation in Swift for iOS, macOS, tvOS, and watchOS

License

Notifications You must be signed in to change notification settings

launchdarkly/swift-eventsource

Folders and files

NameName
Last commit message
Last commit date

Latest commit

193c097 · Dec 5, 2024

History

79 Commits
Dec 5, 2024
Jun 12, 2023
May 31, 2024
May 30, 2024
Oct 23, 2023
Feb 10, 2021
Feb 10, 2021
May 31, 2024
Feb 9, 2021
May 31, 2024
Oct 6, 2023
Dec 29, 2023
May 31, 2024
Apr 23, 2020
Aug 13, 2024
Oct 5, 2022
Oct 5, 2022
May 31, 2024
Jul 7, 2023
Dec 29, 2023

Repository files navigation

LDSwiftEventSource

Run CI CocoaPods Carthage compatible SwiftPM compatible Platform

LDSwiftEventSource is a cross platform implementation of the EventSource specification written in Swift. It was developed for use in the LaunchDarkly iOS SDK. Generated API docs are available on GitHub Pages.

Requirements

  • iOS 11.0+ / watchOS 4.0+ / tvOS 11.0+ / macOS 10.13+
  • Swift 5.1+

Installation

CocoaPods

To use the CocoaPods dependency manager to integrate LDSwiftEventSource into your Xcode project, specify it in your Podfile:

pod 'LDSwiftEventSource', '~> 3.3'

Carthage

To use the Carthage dependency manager to integrate LDSwiftEventSource into your Xcode project, specify it in your Cartfile:

github "LaunchDarkly/swift-eventsource" ~> 3.3

Swift Package Manager

The Swift Package Manager is a dependency manager integrated into the swift compiler and Xcode. Note that the LDSwiftEventSource Swift package provides both a LDSwiftEventSource product, which is explicitly dynamic, and a LDSwiftEventSourceStatic product which is explicitly static.

To integrate LDSwiftEventSource into an Xcode project, go to the project editor, and select Swift Packages. From here hit the + button and follow the prompts using https://github.com/LaunchDarkly/swift-eventsource.git as the URL.

To include LDSwiftEventSource in a Swift package, simply add it to the dependencies section of your Package.swift file. And add the desired product as a dependency for your targets.

dependencies: [
    .package(url: "https://github.com/LaunchDarkly/swift-eventsource.git", .upToNextMajor(from: "3.3.0"))
]

Contributing

We encourage pull requests and other contributions from the community. Check out our contributing guidelines for instructions on how to contribute to this SDK.

About LaunchDarkly

  • LaunchDarkly is a continuous delivery platform that provides feature flags as a service and allows developers to iterate quickly and safely. We allow you to easily flag your features and manage them from the LaunchDarkly dashboard. With LaunchDarkly, you can:
    • Roll out a new feature to a subset of your users (like a group of users who opt-in to a beta tester group), gathering feedback and bug reports from real-world use cases.
    • Gradually roll out a feature to an increasing percentage of users, and track the effect that the feature has on key metrics (for instance, how likely is a user to complete a purchase if they have feature A versus feature B?).
    • Turn off a feature that you realize is causing performance problems in production, without needing to re-deploy, or even restart the application with a changed configuration file.
    • Grant access to certain features based on user attributes, like payment plan (eg: users on the ‘gold’ plan get access to more features than users in the ‘silver’ plan). Disable parts of your application to facilitate maintenance, without taking everything offline.
  • LaunchDarkly provides feature flag SDKs for a wide variety of languages and technologies. Check out our documentation for a complete list.
  • Explore LaunchDarkly