>_ DevTrendsen

Language

Home

Languages

Sections

Frontend Backend Mobile DevOps AI / ML GameDev Blockchain Embedded Security
Dart

AuthPass and Why the Good Old KeePass Got a New Lease on Life with Flutter

AuthPass

Whenever the conversation turns to password managers, the community splits into two camps. Some opt for cloud-based subscription services and turn a blind eye to periodic leaks of other people's vaults. Others stubbornly stick with KeePass and the .kdbx format. With the database file in hand, you control your own secrets. But then another pain point kicks in: a zoo of clients across different platforms.

On desktop, KeePassXC is typically the go-to. On Android you have to install KeePassDX. On iOS you hunt for something like Strongbox or KeePassium. Each has a different interface, its own sync settings, and specific bugs.

The developer behind AuthPass took a different approach and built a unified Flutter client that looks and works the same on Android, iOS, macOS, Windows, Linux, and even in the browser.

AuthPass screenshots across different platforms

Under the hood

The core idea is simple: take a standard KeePass database (KDBX 3.x and KDBX 4.x) and wrap it in a clean, modern interface without the cluttered button overload from the early 2000s. The app is fully open source under the GPL-3.0 license.

The main stack is Dart and Flutter. The project creator implemented KDBX XML parsing and decryption, keyfile handling, and protected fields entirely in Dart.

Here's what AuthPass can do right now:

  • Opens and saves KDBX databases in versions 3 and 4.
  • Supports master passwords and keyfiles.
  • Fetches databases directly from cloud storage (Google Drive, Dropbox) or via direct link.
  • Works with biometrics on smartphones — unlocks the database with fingerprint or Face ID.
  • Integrates with the Android autofill system.
  • Has a web version for when you need to quickly grab a password on someone else's machine without installing anything.

Practical impressions from use

The interface looks clean. Unlike the heavyweight original .NET-based KeePass, the Flutter version feels lightweight on mobile devices. Searching through entries is fast, and copying a username or password to the clipboard takes just one tap.

Sync is handled without a backend: the app doesn't route your data through the project's servers. You simply point it to where your .kdbx is located — locally on disk, in a cloud drive folder, or on a server via link.

If you've ever tried setting up cross-platform KeePass for non-technical relatives, you know how many questions third-party clients can raise. AuthPass solves this with consistent UX across all devices.

Nuances and limitations

The repository shows the project has been actively developed, but some things are still being polished:

  • Autofill on iOS and Auto-Type for desktop systems still need attention or are in the backlog.
  • Support for the Argon2 algorithm in KDBX 4 was a tough spot for pure Dart for a while, though core encryption functions work reliably.
  • There's no built-in conflict resolution mechanism for simultaneous edits from two devices — if the file gets overwritten in the cloud, you'll have to keep track of version accuracy yourself.

If you critically need deep system-level auto-type on Linux or macOS with keystroke emulation into complex forms, desktop KeePassXC still has the edge. But for the "computer + phone for everyday use" combo, AuthPass covers most needs.

Who will find this project useful

First and foremost, those who are tired of KeePass client fragmentation across phones and laptops. If you need a unified visual experience and open source code without being locked into proprietary clouds, AuthPass definitely deserves a test run.

For Dart and Flutter developers, the repository is valuable as a rare example of a full-featured cross-platform app with cryptography, system integrations (biometrics, autofill), and builds for six platforms at once. In the code you can see how file system work is organized across different OSes and how a binary format parser is structured in pure Dart.

Related projects