[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-6863":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":10,"language":11,"languages":10,"totalLinesOfCode":10,"stars":12,"forks":13,"watchers":14,"openIssues":15,"contributorsCount":16,"subscribersCount":16,"size":16,"stars1d":16,"stars7d":17,"stars30d":18,"stars90d":16,"forks30d":16,"starsTrendScore":19,"compositeScore":20,"rankGlobal":10,"rankLanguage":10,"license":21,"archived":22,"fork":22,"defaultBranch":23,"hasWiki":24,"hasPages":24,"topics":25,"createdAt":10,"pushedAt":10,"updatedAt":46,"readmeContent":47,"aiSummary":48,"trendingCount":16,"starSnapshotCount":16,"syncStatus":19,"lastSyncTime":49,"discoverSource":50},6863,"EFQRCode","EFPrefix\u002FEFQRCode","EFPrefix","A better way to operate QRCode in Swift, support iOS, macOS, watchOS, tvOS, and\u002For visionOS.","https:\u002F\u002Fefprefix.github.io\u002FEFQRCode",null,"Swift",4750,509,80,4,0,3,8,2,30.12,"MIT License",false,"main",true,[26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45],"barcode","barcode-generator","barcode-scanner","barcodes","generator","hacktoberfest","ios","qr","qr-code","qr-code-generator","qr-codes","qr-generator","qrcode","qrcode-generator","qrcode-reader","qrcode-scanner","qrcodes","recognizer","swift","watchos","2026-06-12 02:01:31","![](https:\u002F\u002Fraw.githubusercontent.com\u002FEFPrefix\u002FEFQRCode\u002Fassets\u002FEFQRCode.jpg)\n\n\u003Cp align=\"center\">\n    \u003Ca href=\"https:\u002F\u002Fgithub.com\u002FCarthage\u002FCarthage\u002F\">\n        \u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FCarthage-compatible-4BC51D.svg?style=flat-square\">\n    \u003C\u002Fa>\n    \u003Ca href=\"https:\u002F\u002Fswift.org\u002Fpackage-manager\u002F\">\n        \u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FSPM-ready-orange.svg?style=flat-square\">\n    \u003C\u002Fa>\n    \u003Ca href=\"http:\u002F\u002Fcocoapods.org\u002Fpods\u002FEFQRCode\">\n        \u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fcocoapods\u002Fv\u002FEFQRCode.svg?style=flat-square\">\n    \u003C\u002Fa>\n    \u003Ca href=\"https:\u002F\u002Fswiftpackageindex.com\u002FEFPrefix\u002FEFQRCode\">\n        \u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fendpoint?style=flat-square&url=https%3A%2F%2Fswiftpackageindex.com%2Fapi%2Fpackages%2FEFPrefix%2FEFQRCode%2Fbadge%3Ftype%3Dplatforms\">\n    \u003C\u002Fa>\n    \u003Ca href=\"https:\u002F\u002Fraw.githubusercontent.com\u002FEFPrefix\u002FEFQRCode\u002Fmain\u002FLICENSE\">\n        \u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fcocoapods\u002Fl\u002FEFQRCode.svg?style=flat-square\">\n    \u003C\u002Fa>\n\u003C\u002Fp>\n\nEFQRCode is a lightweight, pure-Swift library for generating stylized QRCode images with watermark or icon, and for recognizing QRCode from images, inspired by [qrcode](https:\u002F\u002Fgithub.com\u002Fsylnsfar\u002Fqrcode) and [react-qrbtf](https:\u002F\u002Fgithub.com\u002FCPunisher\u002Freact-qrbtf). Based on `CoreGraphics`, `CoreImage`, and `ImageIO`, EFQRCode provides you a better way to handle QRCode in your app, no matter if it is on iOS, macOS, watchOS, tvOS, and\u002For visionOS. You can integrate EFQRCode through CocoaPods, Carthage, and\u002For Swift Package Manager.\n\n## Examples\n\n![](https:\u002F\u002Fraw.githubusercontent.com\u002FEFPrefix\u002FEFQRCode\u002Fassets\u002FQRCode5.jpg)|![](https:\u002F\u002Fraw.githubusercontent.com\u002FEFPrefix\u002FEFQRCode\u002Fassets\u002FQRCode6.jpg)|![](https:\u002F\u002Fraw.githubusercontent.com\u002FEFPrefix\u002FEFQRCode\u002Fassets\u002FQRCode7.jpg)|![](https:\u002F\u002Fraw.githubusercontent.com\u002FEFPrefix\u002FEFQRCode\u002Fassets\u002FQRCode8.jpg)  \n:---------------------:|:---------------------:|:---------------------:|:---------------------:\n![](https:\u002F\u002Fraw.githubusercontent.com\u002FEFPrefix\u002FEFQRCode\u002Fassets\u002F7sample7.JPG)|![](https:\u002F\u002Fraw.githubusercontent.com\u002FEFPrefix\u002FEFQRCode\u002Fassets\u002F7sample8.JPG)|![](https:\u002F\u002Fraw.githubusercontent.com\u002FEFPrefix\u002FEFQRCode\u002Fassets\u002F7sample2.GIF)|![](https:\u002F\u002Fraw.githubusercontent.com\u002FEFPrefix\u002FEFQRCode\u002Fassets\u002F7sample13.JPG)  \n![](https:\u002F\u002Fraw.githubusercontent.com\u002FEFPrefix\u002FEFQRCode\u002Fassets\u002F7sample4.GIF)|![](https:\u002F\u002Fraw.githubusercontent.com\u002FEFPrefix\u002FEFQRCode\u002Fassets\u002F7sample15.JPG)|![](https:\u002F\u002Fraw.githubusercontent.com\u002FEFPrefix\u002FEFQRCode\u002Fassets\u002F7sample16.JPG)|![](https:\u002F\u002Fraw.githubusercontent.com\u002FEFPrefix\u002FEFQRCode\u002Fassets\u002F7sample1.GIF)  \n\n## Demo Projects\n\n### App Store\n\nYou can click the `App Store` button below to download demo, support iOS, tvOS and watchOS:\n\n\u003Ca target='_blank' href='https:\u002F\u002Fitunes.apple.com\u002Fapp\u002FEFQRCode\u002Fid1242337058?mt=8'>\n    \u003Cimg src='https:\u002F\u002Fraw.githubusercontent.com\u002FEFPrefix\u002FEFQRCode\u002Fassets\u002Ficon\u002FAppStore.jpeg' width='144' height='49'\u002F>\n\u003C\u002Fa>\n\nYou can also click the `Mac App Store` button below to download demo for macOS:\n\n\u003Ca target='_blank' href='https:\u002F\u002Fitunes.apple.com\u002Fapp\u002FEFQRCode\u002Fid1306793539?mt=8'>\n    \u003Cimg src='https:\u002F\u002Fraw.githubusercontent.com\u002FEFPrefix\u002FEFQRCode\u002Fassets\u002Ficon\u002FAppStoreMac.png' width='168.5' height='49'\u002F>\n\u003C\u002Fa>\n\n### Compile Demo Manually\n\nTo run the example project manually, clone the repo, demos are in the 'Examples' folder, then open `EFQRCode.xcworkspace` with Xcode and select the target you want, run.\n\nOr you can run the following command in terminal:\n\n```bash\ngit clone git@github.com:EFPrefix\u002FEFQRCode.git; cd EFQRCode; open 'EFQRCode.xcworkspace'\n```\n\n## Requirements\n\niOS 13.0+ \u002F macOS 10.15+ \u002F tvOS 13.0+ \u002F watchOS 6.0+ \u002F visionOS 1.0+\n\n## Installation\n\n### CocoaPods\n\nEFQRCode is available through [CocoaPods](http:\u002F\u002Fcocoapods.org). To install it, simply add the following line to your Podfile:\n\n```ruby\npod 'EFQRCode', '~> 7.0.3'\n```\n\nThen, run the following command:\n\n```bash\n$ pod install\n```\n\n### Carthage\n\n[Carthage](https:\u002F\u002Fgithub.com\u002FCarthage\u002FCarthage) is a decentralized dependency manager that builds your dependencies and provides you with binary frameworks.\n\nYou can install Carthage with [Homebrew](http:\u002F\u002Fbrew.sh\u002F) using the following command:\n\n```bash\n$ brew update\n$ brew install carthage\n```\n\nTo integrate EFQRCode into your Xcode project using Carthage, specify it in your `Cartfile`:\n\n```ogdl\ngithub \"EFPrefix\u002FEFQRCode\" ~> 7.0.3\n```\n\nRun `carthage update` to build the framework and drag the built `EFQRCode.framework` into your Xcode project.\n\n### Swift Package Manager\n\nThe [Swift Package Manager](https:\u002F\u002Fswift.org\u002Fpackage-manager\u002F) is a tool for automating the distribution of Swift code and is integrated into the Swift compiler.\n\nOnce you have your Swift package set up, adding EFQRCode as a dependency is as easy as adding it to the `dependencies` value of your `Package.swift`.\n\n```swift\ndependencies: [\n    .package(url: \"https:\u002F\u002Fgithub.com\u002FEFPrefix\u002FEFQRCode.git\", .upToNextMinor(from: \"7.0.3\"))\n]\n```\n\n## Quick Start\n\n#### 1. Import EFQRCode\n\nImport EFQRCode module where you want to use it:\n\n```swift\nimport EFQRCode\n```\n\n#### 2. Recognition\n\nA String Array is returned as there might be several QR Codes in a single `CGImage`:\n\n```swift\nif let testImage = UIImage(named: \"test.png\")?.cgImage {\n    let codes = EFQRCode.Recognizer(image: testImage).recognize()\n    if !codes.isEmpty {\n        print(\"There are \\(codes.count) codes\")\n        for (index, code) in codes.enumerated() {\n            print(\"The content of QR Code \\(index) is \\(code).\")\n        }\n    } else {\n        print(\"There is no QR Codes in testImage.\")\n    }\n}\n```\n\n#### 3. Generation\n\n##### 3.1 Create QR Code with static image\n\n```swift\nlet generator = try? EFQRCode.Generator(\"https:\u002F\u002Fgithub.com\u002FEFPrefix\u002FEFQRCode\", style: .image(\n    params: .init(image: .init(image: .static(image: UIImage(named: \"WWF\")?.cgImage!), allowTransparent: true)))\n)\nif let image = try? generator?.toImage(width: 180).cgImage {\n    print(\"Create QRCode image success \\(image)\")\n} else {\n    print(\"Create QRCode image failed!\")\n}\n```\n\nResult: \n\n\u003Cimg src=\"https:\u002F\u002Fraw.githubusercontent.com\u002FEFPrefix\u002FEFQRCode\u002Fassets\u002Fsample1.jpg\" width = \"36%\"\u002F>\n\n##### 3.2 Generation from animated images\n\nYou can create a dynamic QR code by passing in a sequence of animated images. The usage method is as follows:\n\n```swift\nlet generator = try? EFQRCode.Generator(\"https:\u002F\u002Fgithub.com\u002FEFPrefix\u002FEFQRCode\", style: .image(\n    params: .init(image: .init(image: .animated(images: cgImages, imageDelays: cgImageDelays))))\n)\nif let imageData = try? generator?.toGIFData(width: 512) {\n    print(\"Create QRCode image success \\(imageData)\")\n} else {\n    print(\"Create QRCode image failed!\")\n}\n```\n\nYou can get more information from the demo, result will like this:\n\n\u003Cimg src=\"https:\u002F\u002Fraw.githubusercontent.com\u002FEFPrefix\u002FEFQRCode\u002Fassets\u002FQRCodeGIF6.gif\" width = \"36%\"\u002F>\n\n##### 3.3 Exportable types\n\n- Static: NSImage, UIImage, PDF, PNG, JPEG\n- Animated: APNG, GIF, SVG, MOV, MP4, M4V\n\n#### 4. Next\n\nLearn more from [DeepWiki](https:\u002F\u002Fdeepwiki.com\u002FEFPrefix\u002FEFQRCode).\n\n## Recommendations\n\n1. Please select a high contrast foreground and background color combinations;\n2. To improve the definition of QRCode images, increase `size`;\n3. Oversized generation dimensions, excessive QR code content, and overly large imported media may lead to generation failures;\n4. It is recommended to test the QRCode image before put it into use;\n5. Any contributing and pull requests are warmly welcome;\n6. Part of the pictures in the demo project and guide come from the internet. If there is any infringement of your legitimate rights and interests, please contact us to delete.\n\n## Contributors\n\n\u003Ca href=\"https:\u002F\u002Fopencollective.com\u002Fefqrcode#contributors\">\n    \u003Cimg src=\"https:\u002F\u002Fopencollective.com\u002Fefqrcode\u002Fcontributors.svg?width=890\"\u002F>\n\u003C\u002Fa>\n\n## Backers\n\n\u003Ca href=\"https:\u002F\u002Fopencollective.com\u002Fefqrcode#backers\" target=\"_blank\">\n    \u003Cimg src=\"https:\u002F\u002Fopencollective.com\u002Fefqrcode\u002Fbackers.svg?width=890\">\n\u003C\u002Fa>\n\n## Sponsors\n\n- Thanks for the help from MacStadium's [Open Source Program](https:\u002F\u002Fwww.macstadium.com\u002Fopensource?from=EFQRCode).\n\n\u003Ca href=\"https:\u002F\u002Fmacstadium.com\u002F?from=EFQRCode\">\n    \u003Cimg src=\"https:\u002F\u002Fuploads-ssl.webflow.com\u002F5ac3c046c82724970fc60918\u002F5c019d917bba312af7553b49_MacStadium-developerlogo.png\" width = \"46%\">\n\u003C\u002Fa>\n\n- Thanks for the help from JetBrains's [Open Source Support Program](https:\u002F\u002Fwww.jetbrains.com\u002Fcommunity\u002Fopensource\u002F?from=EFQRCode).\n\n\u003Ca href=\"https:\u002F\u002Fwww.jetbrains.com\u002F?from=EFQRCode\">\n    \u003Cimg src=\"https:\u002F\u002Fraw.githubusercontent.com\u002FEFPrefix\u002FEFQRCode\u002Fce8982e1858d62ac8b9fecec96f5369d8b1b62c3\u002Flogo\u002Fjetbrains.svg?sanitize=true\" width = \"20%\">\n\u003C\u002Fa>\n\n## Contact\n\nTwitter: [@EyreFree777](https:\u002F\u002Fx.com\u002Feyrefree777)   \nWeibo: [@EyreFree](https:\u002F\u002Fweibo.com\u002Feyrefree777)   \nEmail: [eyrefree@eyrefree.org](mailto:eyrefree@eyrefree.org)   \n\n## License\n\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002FEFPrefix\u002FEFQRCode\u002Fblob\u002Fmain\u002FLICENSE\">\n    \u003Cimg src=\"https:\u002F\u002Fupload.wikimedia.org\u002Fwikipedia\u002Fcommons\u002Fthumb\u002Ff\u002Ff8\u002FLicense_icon-mit-88x31-2.svg\u002F128px-License_icon-mit-88x31-2.svg.png\">\n\u003C\u002Fa>\n\nEFQRCode is available under the MIT license. See the LICENSE file for more info.\n","EFQRCode 是一个轻量级的纯 Swift 库，用于生成带有水印或图标的 QR 码图像，并能够从图像中识别 QR 码。基于 CoreGraphics、CoreImage 和 ImageIO 技术，它为 iOS、macOS、watchOS、tvOS 以及 visionOS 平台上处理 QR 码提供了更优解决方案。该库支持自定义样式和多种集成方式（如 CocoaPods、Carthage 和 Swift Package Manager），非常适合需要在应用中添加二维码生成功能或扫描功能的开发者使用。","2026-06-11 03:09:17","top_language"]