QRCodeSwift: cross-platform/watchOS QRCode generator in Swift (without CIFilter)

What's New

swift_qrcodejs 1.1.4


Bug fixes and performance improvements.

QRCodeSwift (swift_qrcodejs)

Latest Release MIT License Swift 5.0+ Compatible with All Platforms

Documentation Code Coverage CocoaPods Compatible Swift Package Manager Compatible Carthage Compatible

Cross-platform QRCode generator written in pure Swift, aiming to solve the awkward situation that there's no CIFilter for QRCode generation on Apple Watches.


Swift Package Manager
with Xcode

More details in the Official Guide, but in general:

  1. Select in the menu bar of Xcode: File > Swift Packages > Add Package Dependency
  2. Enter https://github.com/ApolloZhu/swift_qrcodejs.git
  3. Next, specify the version resolving rule as "Up to Next Major"
  4. Finish with choosing QRCodeSwift library and add it to your app target.
with Package.swift
dependencies: [
    .package(url: "https://github.com/ApolloZhu/swift_qrcodejs.git", from: "2.2.2"),

... then add QRCodeSwift module/target from package swift_qrcodejs as your dependency.

pod 'swift_qrcodejs', '~> 2.2.2'

I assume you know what you are doing (because I don't), but you probably need something like this:

github "ApolloZhu/swift_qrcodejs" ~> 2.2.2

Note that Carthage doesn't work with Xcode 12 (but here's a workaround).


Add all the .swift files from the Sources folder into your project.


import QRCodeSwift

guard let qrCode = try? QRCode("Hello World!") else {
    fatalError("Failed to generate QRCode")
print(qrCode.toString(filledWith: "##", patchedWith: "  "))

For more, checkout the documentation.

Example Projects


MIT License. Modified based on qrcodejs. See LICENSE and each individual file header for more information.


  • Swift Tools 5.0.0
View More Packages from this Author


  • None
Last updated: Sun Sep 04 2022 07:25:39 GMT-0500 (GMT-05:00)