Skip to main content
OAOlamilekan AdeyemiFlutter · React · Next.js · Full-Stack DeveloperHire Me
All packages/Authentication UI/flutter_secure_pin_pad
Authentication UI

flutter_secure_pin_pad

A customizable PIN entry widget with biometric fallback, shuffled keys and lockout timers.

PINInputAuthentication UI
v1.0.0Documented version
MITOpen source license
Flutter & DartSee platform notes

Overview

Build a PIN entry interface with shuffled keys and local lockout behavior. Connect authentication to your own application backend.

flutter_secure_pin_pad Build a PIN entry interface with shuffled keys and local lockout behavior. Connect authentication to your own application backend.

PIN
Input
Authentication UI

Installation

Add the package to your Flutter project.

bash
flutter pub add flutter_secure_pin_pad:^1.0.0

Quick Start

Start with this small example, then connect it to your own application. Read the known limitations before using it with real data.

dart
import 'package:flutter_secure_pin_pad/flutter_secure_pin_pad.dart';

final controller = PinPadController(
  pinLength: 4,
  maxFailedAttempts: 3,
  lockoutDuration: const Duration(seconds: 30),
);

// Pass this controller to SecurePinPad.
// Verify submitted PINs through your authentication service.
// Dispose the controller when its owning screen is disposed.

This is a starting point, not a complete application. Add error handling and tests for your own backend and lifecycle.

Configuration

Keep configuration with the part of your application that owns the package instance. Connect authentication, storage, exporters or backend handlers explicitly rather than relying on hidden global state.

Use the versioned API reference for constructors and options. The starting example above focuses on a small integration surface; the repository example shows the surrounding application code.

Explore configuration in the API reference

Known Limitations

The controller currently accepts arbitrary strings through appendDigit. Enforce digit input yourself. Lockout state is held in memory, and biometric authentication is supplied through your callback, not implemented by this package.

API Reference

Explore the public classes, methods and constructors for version 1.0.0.

Open versioned API reference

Example & Tests

Use the repository example to explore the package in context. Run its tests locally, and add regression cases for the known limitations above. The SSL package’s device test results do not apply to this package.

bash
git clone https://github.com/lekthedeveloper/flutter_secure_pin_pad.git
cd flutter_secure_pin_pad
flutter pub get
flutter test
View repository example

Frequently Asked Questions

Can I use this package in a commercial app?

The package is MIT licensed. Follow the license terms and review the current limitations for your use case.

Where should I report a bug?

Open an issue in the package repository. Include the package and Flutter versions, a minimal reproduction and the expected behavior. Remove credentials and private data.

Are these packages all verified for production?

No blanket guarantee is made. Each guide documents its current limitations. Test your integration and use independent review for sensitive workflows.