An iOS passcode lock implementation with TouchID authentication, written in Swift.
PasscodeLock is a Swift library for implementing a secure passcode lock interface in iOS apps, with built-in TouchID authentication. It solves the need for adding customizable passcode protection to safeguard user data, even when the device is unlocked. The library provides a flexible, protocol-based architecture that integrates seamlessly with existing iOS projects.
iOS developers building apps that require secure passcode or biometric authentication, such as banking, health, or privacy-focused applications.
Developers choose PasscodeLock for its native Swift implementation, easy customization via @IBDesignable components, and robust support for multiple passcode states and TouchID integration, all without relying on third-party dependencies.
An iOS passcode lock with TouchID authentication written in Swift.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Seamlessly adds biometric authentication alongside passcode entry, enhancing security without requiring additional third-party dependencies, as shown in the README's feature list.
Provides @IBDesignable and @IBInspectable views like PasscodeSignPlaceholderView, allowing visual customization in Xcode's Interface Builder via XIB files for brand matching.
Supports multiple states (enter, set, change, remove) through the LockState enumeration, enabling adaptable passcode workflows for various app scenarios.
Built around PasscodeRepositoryType and PasscodeLockConfigurationType protocols, facilitating easy integration and extension for custom storage and configuration needs.
Requires Swift 2.0 and Xcode 7, which may not be compatible with modern Swift projects (e.g., Swift 5+), limiting adoption in current iOS development environments.
The library lacks Keychain integration; developers must implement secure storage themselves, as the demo uses insecure NSUserDefaults and the README advises using Keychain with extra work.
Only supports TouchID, missing FaceID and other newer biometric methods available in recent iOS versions, which could be a deal-breaker for apps targeting modern devices.