PB Authenticator : A modern, open-source two-factor authentication (2FA) app built with Flutter

Sasan Salamzadeh 581057050d Persian laguage and RTL Style added, Readme Updated 1 year ago
android 7354e7da0d Fingerprint and pin added 1 year ago
assets 581057050d Persian laguage and RTL Style added, Readme Updated 1 year ago
graphics 9f0b081181 Add Aegis Icons Outline to project and card 1 year ago
lib 581057050d Persian laguage and RTL Style added, Readme Updated 1 year ago
readme-assets 581057050d Persian laguage and RTL Style added, Readme Updated 1 year ago
state 581057050d Persian laguage and RTL Style added, Readme Updated 1 year ago
test 2251d54d59 Add help section and FAQ 1 year ago
totp 581057050d Persian laguage and RTL Style added, Readme Updated 1 year ago
.editorconfig 141e408b83 Initial Commit 1 year ago
.gitignore 141e408b83 Initial Commit 1 year ago
.metadata 141e408b83 Initial Commit 1 year ago
LICENSE 141e408b83 Initial Commit 1 year ago
README.md 581057050d Persian laguage and RTL Style added, Readme Updated 1 year ago
analysis_options.yaml 141e408b83 Initial Commit 1 year ago
devtools_options.yaml 141e408b83 Initial Commit 1 year ago
l10n.yaml 141e408b83 Initial Commit 1 year ago
pubspec.lock 9f0b081181 Add Aegis Icons Outline to project and card 1 year ago
pubspec.yaml 581057050d Persian laguage and RTL Style added, Readme Updated 1 year ago

README.md

PB Authenticator

A modern, open-source two-factor authentication (2FA) app built with Flutter. PB Authenticator supports TOTP, QR code scanning, secure local storage, and a beautiful, customizable UI. Now with full Persian (Farsi) language support, RTL layout, and the Vazirmatn font for a seamless experience for Persian users.


๐Ÿš€ Features

  • Time-based One-Time Passwords (TOTP): Securely generate 2FA codes for your accounts.
  • QR Code Scanning: Quickly add accounts by scanning QR codes.
  • Manual Entry: Add accounts manually if QR is not available.
  • Material Design: Clean, modern, and responsive UI.
  • Icon Support: Large collection of SVG icons for popular services.
  • Account Management: Edit, remove, and organize your 2FA accounts.
  • Export/Import: Transfer your accounts between devices securely.
  • Security: PIN code and biometric authentication support.
  • Screen Capture Prevention: Optional protection against screenshots.
  • Theme Support: Light, dark, and system themes.
  • Localization:
    • English and Persian (Farsi) language support
    • Language switcher in settings
    • RTL layout and Vazirmatn font for Persian
  • Cross-Platform: Runs on Android, iOS, and desktop (Flutter-supported platforms).

๐ŸŒ Localization & RTL

  • Persian (Farsi) Support: All UI elements are fully translated.
  • RTL Layout: The app automatically switches to right-to-left layout and uses the Vazirmatn font when Persian is selected.
  • Language Switcher: Instantly change the app language from the settings menu.

๐Ÿ–ผ๏ธ Icon & Asset Support

  • Hundreds of SVG icons for popular services (see graphics/aegis-icons-outline/SVG/).
  • Custom app icon included.

๐Ÿ”’ Security

  • All data is stored locally on your device.
  • PIN code and biometric authentication options.
  • Optional prevention of screen capture for sensitive screens.

๐Ÿ“ฆ Getting Started

Prerequisites

  • Flutter SDK
  • Android/iOS device or emulator, or desktop (for supported platforms)

Installation

flutter pub get
flutter run

Directory Structure

  • lib/ โ€” Main app code
  • lib/pages/ โ€” UI pages (settings, add, import/export, etc.)
  • lib/l10n/ โ€” Localization files (ARB, generated Dart)
  • graphics/ โ€” App icons and SVG icon set
  • assets/fonts/ โ€” Custom fonts (Vazirmatn)
  • test/, state/test/, totp/test/ โ€” Unit and widget tests

๐Ÿงช Testing

Run all tests:

flutter test

๐Ÿค Contributing

Contributions, issues, and feature requests are welcome!

  • Fork the repo
  • Create your feature branch (git checkout -b feature/your-feature)
  • Commit your changes (git commit -am 'Add new feature')
  • Push to the branch (git push origin feature/your-feature)
  • Open a pull request

๐Ÿ“„ License

This project is licensed under the MIT License โ€” see the LICENSE file for details.


๐Ÿ™ Credits


๐Ÿ“ท Screenshots

Material Theme
Import Accounts
Add Account with Manual Input
Main Page Code List
PB Authenticator Settins
How It Works

Disclaimer: PB Authenticator is not ready for production. There may be bugs and upgrade issues. Use at your own risk.