PrivacyFlash Pro alternatives and similar libraries
Based on the "Utility" category.
Alternatively, view PrivacyFlash Pro alternatives based on common mentions on social networks and blogs.
SwifterSwift9.9 8.2 L5 PrivacyFlash Pro VS SwifterSwiftA handy collection of more than 500 native Swift extensions to boost your productivity.
SwiftGen-Storyboard9.8 9.1 L5 PrivacyFlash Pro VS SwiftGen-StoryboardThe Swift code generator for your assets, storyboards, Localizable.strings, … — Get rid of all String-based APIs!
R.swift9.8 0.0 L3 PrivacyFlash Pro VS R.swiftStrong typed, autocompleted resources like images, fonts and segues in Swift projects
SwiftGen9.8 9.1 L5 PrivacyFlash Pro VS SwiftGenThe Swift code generator for your assets, storyboards, Localizable.strings, … — Get rid of all String-based APIs!
swift-protobufPlugin and runtime library for using protobuf with Swift
ExSwift9.2 0.0 L2 PrivacyFlash Pro VS ExSwifta set of Swift extensions for standard types and classes.
Then9.2 1.0 PrivacyFlash Pro VS Then✨ Super sweet syntactic sugar for Swift initializers
EZSwiftExtensions9.1 0.0 L5 PrivacyFlash Pro VS EZSwiftExtensions:smirk: How Swift standard types and classes were supposed to work.
Swiftz9.1 0.0 L4 PrivacyFlash Pro VS SwiftzFunctional programming in Swift
Periphery9.1 4.4 PrivacyFlash Pro VS PeripheryA tool to identify unused code in Swift projects.
DifferenceKit💻 A fast and flexible O(n) difference algorithm framework for Swift collection.
WhatsNewKit8.9 4.2 PrivacyFlash Pro VS WhatsNewKitShowcase your awesome new app features 📱
Cache8.8 0.0 L3 PrivacyFlash Pro VS Cache:package: Nothing but Cache.
LifetimeTrackerFind retain cycles / memory leaks sooner.
Result8.7 0.0 L5 PrivacyFlash Pro VS ResultSwift type modelling the success/failure of arbitrary operations.
DeepDiff8.4 0.0 PrivacyFlash Pro VS DeepDiff🦀Amazingly incredible extraordinary lightning fast diffing in Swift
Closures8.1 0.0 PrivacyFlash Pro VS ClosuresSwifty closures for UIKit and Foundation
Device8.0 0.0 L3 PrivacyFlash Pro VS DeviceLight weight tool for detecting the current device and screen size written in swift.
SwiftTweaks7.8 0.0 L4 PrivacyFlash Pro VS SwiftTweaksTweak your iOS app without recompiling!
SwiftLinkPreview7.8 0.0 L4 PrivacyFlash Pro VS SwiftLinkPreviewIt makes a preview from an URL, grabbing all the information such as title, relevant texts and images.
WhatsNew7.8 0.0 PrivacyFlash Pro VS WhatsNewShowcase new features after an app update similar to Pages, Numbers and Keynote.
RandomKit7.7 0.0 L2 PrivacyFlash Pro VS RandomKitRandom data generation in Swift
Codextended7.6 0.0 PrivacyFlash Pro VS CodextendedExtensions giving Swift's Codable API type inference super powers 🦸♂️🦹♀️
AwesomeCache7.6 0.0 L5 PrivacyFlash Pro VS AwesomeCacheDelightful on-disk cache (written in Swift)
Popsicle7.4 0.0 L3 PrivacyFlash Pro VS PopsicleDelightful, extensible Swift value interpolation framework.
PinpointKit7.3 1.9 L5 PrivacyFlash Pro VS PinpointKitSend better feedback
SwiftyJSONAccelerator7.2 0.0 L4 PrivacyFlash Pro VS SwiftyJSONAcceleratormacOS app to generate Swift 5 code for models from JSON (with Codeable)
Sugar7.2 0.0 L5 PrivacyFlash Pro VS Sugar:coffee: Something sweet that goes great with your Cocoa
protobuf-swift7.2 0.0 L1 PrivacyFlash Pro VS protobuf-swiftGoogle ProtocolBuffers for Apple Swift
Money7.1 0.0 L4 PrivacyFlash Pro VS MoneyCurrency formatter in Swift.
Playbook7.0 0.0 PrivacyFlash Pro VS Playbook📘A library for isolated developing UI components and automatically taking snapshots of them.
Runes6.8 0.0 L5 PrivacyFlash Pro VS RunesInfix operators for monadic functions in Swift
ReadabilityKitPreview extractor for news, articles and full-texts in Swift
Highlighter6.7 0.0 PrivacyFlash Pro VS Highlighter🖍 Highlight whatever you want!
PDFGenerator6.6 0.0 L2 PrivacyFlash Pro VS PDFGeneratorA simple generator of PDF written in Swift.
Compass6.5 0.0 L5 PrivacyFlash Pro VS Compass:earth_africa: Compass helps you setup a central navigation system for your application
ObjectiveKit6.5 0.0 L5 PrivacyFlash Pro VS ObjectiveKitSwift-friendly API for a set of powerful Objective C runtime functions.
LlamaKit6.0 0.0 L5 PrivacyFlash Pro VS LlamaKitCollection of must-have functional Swift tools
Delegated6.0 2.8 PrivacyFlash Pro VS Delegated👷♀️ Closure-based delegation without memory leaks
Carlos5.9 2.5 L2 PrivacyFlash Pro VS CarlosA simple but flexible cache
SwiftRandom5.8 0.0 L5 PrivacyFlash Pro VS SwiftRandomA tiny generator of random data for swift
Bow5.8 0.0 PrivacyFlash Pro VS Bow🏹 Bow is a cross-platform library for Typed Functional Programming in Swift
Solar5.7 0.0 L4 PrivacyFlash Pro VS SolarA Swift micro library for generating Sunrise and Sunset times.
Pythonic.swift5.6 0.0 L2 PrivacyFlash Pro VS Pythonic.swiftPythonic tool-belt for Swift – a Swift implementation of selected parts of Python standard library.
SwiftyUtils5.6 0.0 L5 PrivacyFlash Pro VS SwiftyUtilsAll the reusable code that we need in each project
Curry5.6 0.0 PrivacyFlash Pro VS CurrySwift implementations for function currying
Rugby5.5 8.6 PrivacyFlash Pro VS Rugby🏈 Cache CocoaPods for faster rebuild and indexing Xcode project
AppVersionMonitorMonitor iOS app version easily.
Prototope5.2 0.0 L5 PrivacyFlash Pro VS PrototopeSwift library of lightweight interfaces for prototyping, bridged to JS.
Appwrite - The Open Source Firebase alternative introduces iOS support
* Code Quality Rankings and insights are calculated and provided by Lumnify.
They vary from L1 to L5 with "L5" being the highest.
Do you think we are missing an alternative of PrivacyFlash Pro or a related project?
- Assisting app developers in understanding the privacy practices used by their apps and third party libraries
- Establishing standardized privacy policies in the iOS app ecosystem
PrivacyFlash Pro covers provisions of the following laws:
- California Consumer Privacy Act (CCPA)
- California Online Privacy Protection Act (CalOPPA)
- Children's Online Privacy Protection (COPPA)
- General Data Protection Regulation (GDPR).
PrivacyFlash Pro was written by David Baraka (@davebaraka), Rafael Goldstein (@rgoldstein01), Sarah Jin (@sj-in), and Sebastian Zimmeck (@SebastianZimmeck) as an academic project of the privacy-tech-lab at Wesleyan University. Kuba Alicki (@kalicki1) wrote the unit tests.
Installing and Running PrivacyFlash Pro
You can install and run PrivacyFlash Pro from the packaged release or from the source files.
Installing from the Packaged Release
You will find the releases of PrivacyFlash Pro in the releases section. Download the latest one here (you may need to allow downloading the zip file in your browser settings, e.g., under Google Chrome's Downloads settings). Unzip the file
privacyflash-pro.zip and then click the PrivacyFlash Pro icon. You will have to agree to open PrivacyFlash Pro in your macOS security settings. After a few seconds PrivacyFlash Pro should run in your default browser.
Installing from the Source Files
Ensure that Python 3 is installed. PrivacyFlash Pro does not support Python 2. You can check in your terminal if you have Python 3 installed by running
python3. You can get Python 3 on the official Python website.
Clone this repo by
cding into the directory in which you want to store PrivacyFlash Pro and run
git clone [email protected]:privacy-tech-lab/privacyflash-pro.git.
Optional Create and activate a Python virtual environment. Ensure that your Python virtual environment is outside of the
privacyflash-prodirectory to avoid git tracking.
privacyflash-pro/policygeneratordirectory. If you are using a Python virtual environment, run
pip3 install -r requirements.txt. Otherwise, run
pip3 install --user -r requirements.txt. If you continue to get errors, run
pip3 install -r requirements.txt. If you still get errors, run
sudo pip3 install -r requirements.txt.
Run PrivacyFlash Pro with
Using PrivacyFlash Pro's directory navigation, navigate to your iOS Swift project directory (the directory that contains your
You can test PrivacyFlash Pro on the projects in the iOS-sample-projects. For example, you can analyze the AdColony sample project. Start PrivacyFlash Pro, in your browser navigate to the AdColony directory using PrivacyFlash Pro's directory navigation, and click OK to start the analysis. The analysis results should be available within a minute.
If your browser does not connect to the localhost, try disabling any antivirus software (e.g., eset) that you may be running.
PrivacyFlash Pro analyzes iOS app source code in Swift and third party libraries in Swift and Objective-C. The library analysis works for uncompiled and compiled libraries. PrivacyFlash Pro does not analyze iOS app source code in Objective-C.
PrivacyFlash Pro (1.0.2) was tested to run on macOS Catalina (10.15.5) and the Brave Browser (1.9.80, Chromium: 81.0.4044.138 (Official Build) (64-bit)).
PrivacyFlash Pro is from the people for the people. Everyone can contribute. In particular, feel free to open a pull request to add additional privacy practices and third party libraries. You can also make a feature request by opening a new issue with the
feature request label. If you have other ideas or feedback, let us know. We are looking forward to hear from you!
Privacy Practice Analysis
The specification for the privacy practice analysis is contained in
policygenerator/spec/privacy_practices.yaml. PrivacyFlash Pro flags a privacy practice in an app or a third party library if it identifies the use of a relevant API, i.e., all of the following are present for the app or a library:
- PLIST value (e.g.,
- FRAMEWORK import (e.g.,
- CLASS instantiation (e.g.,
- AUTHORIZATION METHOD call (e.g.,
For the analysis of the app code, the AUTHORIZATION METHOD can also be in a library as long as there is ADDITIONAL EVIDENCE (e.g.,
startUpdatingLocation) in the app code. Vice versa, for the analysis of a library, the AUTHORIZATION METHOD can also be in the app code as long as there is ADDITIONAL EVIDENCE (e.g.,
startUpdatingLocation) in the library.
Also, for some practices, for example, Health, an ENTITLEMENT (e.g., com.apple.developer.healthkit) is required. For more details see the privacy_practices.yaml.
Third Party Library Analysis
PrivacyFlash Pro identifies any library integrated in the analyzed app. The specification for the third party library analysis is contained in
policygenerator/spec/third_parties.yaml. PrivacyFlash Pro is using this specification for determining the purpose of a library. A library name is given by its name on CocoaPods. For example,
AdColony has the purpose
Advertising. PrivacyFlash Pro currently identifies the purposes of 300 libraries using the following purpose categories:
Social Network Integration
Note that even if a library is is not contained in
Our unit tests for PrivacyFlash Pro have been built with the Python unittest framework. In order to run the built-in tests for PrivacyFlash Pro, use
python3 -m unittest from within the root directory of your local copy of this repo.
Files and Directories in this Repo
- The latest release of PrivacyFlash Pro is contained in the releases section.
iOS-sample-projects: Sample projects for PrivacyFlash Pro to analyze and test.
policygenerator/: Contains the code of PrivacyFlash Pro.
policygenerator/interface: Contains all code related to the user interface for displaying the policy to the user.
policygenerator/spec: Third party and privacy practices specifications.
policygenerator/spec/third_parties.yaml: Contains the specification for ad networks and other third parties.
policygenerator/spec/privacy_practices.yaml: Contains the specification for detecting privacy practice usage.
policygenerator/src/analysis.py: The module for analyzing the project looks for instances of privacy practice usage.
policygenerator/src/constants.py: The constants class used internally to identify a privacy practice by an index value.
policygenerator/src/evidence.py: The evidence class is used for keeping track of privacy practice usages in an app's files.
policygenerator/src/privacy_practices.py: Loads data from the app project to be analyzed.
policygenerator/requirements.txt: Dependencies of PrivacyFlash Pro.
Third Party Libraries
PrivacyFlash Pro uses the following third party libraries. We thank the developers.