The SmileLock is an efficient and easy-to-implement library designed to add pin-code or password functionality to iPhone applications. The simplicity and high customizability of SmileLock provide developers ample opportunity for easy integration, while reaching the desired level of security. Whether for user authentication or data encryption, SmileLock is the ideal choice.

About SmileLock

SmileLock is an iOS Swift Pincode library, which creates a custom iOS keypad. This password input view can be easily integrated into iOS applications and has been built with flexibility and customization in mind.

Key Features

  • Touch ID support with password fallback.
  • Auto layout UI design, which works perfectly with different screen sizes.
  • Support for optional settings such as enabling touch ID, changing and confirming passwords.
  • Support for customized password UI.


SmileLock can be installed easily through CocoaPods. Add the following line to your Podfile:

pod 'SmileLock', '~> 2.1'

To update to the latest version of SmileLock, use the ‘pod update’ command:

pod update SmileLock


To make use of SmileLock’s functions, import the SmileLock library in the header files where you need to implement the functionality:

import SmileLock

Create a password container view and assign the password digits. Apply any customization to the view as per your design requirements:

let passwordContainerView: PasswordContainerView = .create(in: stackView, digit: 6)
passwordContainerView.delegate = self
passwordContainerView.touchAuthenticationEnabled = true


SmileLock offers a range of customization options including tintColor, digit color, highlighted color, delete button image, touch ID image etc., You can create your own custom password UI design by modifying these parameters.


Contributions to the SmileLock project are welcome. Developers can make the package even better by reporting bugs, suggesting new features, or contributing code directly to the repository.