Flare is a framework written in Swift that makes it easy for you to work with in-app purchases and subscriptions.
- Features
- Usage
- Documentation
- Requirements
- Installation
- Communication
- Contributing
- Have a Question
- Author
- License
- Support Consumable & Non-Consumable Purchases
- Support Subscription Purchase
- Support Promotional & Introductory Offers
- Support StoreKit and StoreKit 2
- iOS, tvOS, watchOS, macOS, and visionOS compatible
- Complete Unit, Integration & Snapshot Test Coverage
- Offer a UI for building in-app purchase stores in SwiftUI and UIKit
import Flare
/// Fetch a product with the given id
guard let product = try await Flare.shared.products(productIDs: ["product_identifier"]) else { return }
/// Purchase a product
let transaction = try await Flare.shared.purchase(product: product)
/// Finish a transaction
Flare.shared.finish(transaction: transaction, completion: nil)
Check out the documentation.
- Flare Docs describe how to integrate the main framework
- FlareUI Docs contains information about integrating the UI framework, displaying products and subscriptions, and customizing them.
Package | Supported Platforms | XCode | Minimum Swift Version |
---|---|---|---|
Flare | iOS 13.0+ / macOS 10.15+ / tvOS 13.0+ / watchOS 7.0+ / visionOS 1.0+ | 14.2 | 5.7 |
FlareUI | iOS 13.0+ / macOS 10.15+ / tvOS 13.0+ | 14.2 | 5.7 |
The Swift Package Manager is a tool for automating the distribution of Swift code and is integrated into the swift
compiler. It is in early development, but flare
does support its use on supported platforms.
Once you have your Swift package set up, adding flare
as a dependency is as easy as adding it to the dependencies
value of your Package.swift
.
dependencies: [
.package(url: "https://github.com/space-code/flare.git", .upToNextMajor(from: "3.0.2"))
]
- If you found a bug, open an issue.
- If you have a feature request, open an issue.
- If you want to contribute, submit a pull request.
Bootstrapping development environment
make bootstrap
Please feel free to help out with this project! If you see something that could be made better or want a new feature, open up an issue or send a Pull Request!
Contact us via issues on GitHub.
Nikita Vasilev, [email protected]
flare is available under the MIT license. See the LICENSE file for more info.