2026-04-18 22:16:25 -07:00
2026-04-13 17:30:33 -07:00
2026-04-13 06:58:11 -07:00
2026-04-16 21:08:31 -07:00
2026-04-16 21:08:31 -07:00

KeePassGO

KeePassGO is a Go-based KeePass-compatible password manager targeting desktop first, with future Android support.

Current Capabilities

  • KDBX load and save
  • password-only, key-file-only, and composite master-key flows through the desktop product UI
  • master-key changes for existing vault sessions
  • WebDAV-backed open and save support in the session layer
  • password generation profiles
  • gRPC integration surface for trusted automation
  • template, attachment, group, history, and recycle-bin persistence

Run

go run .

Phone-sized preview:

go run . -mode phone

Test

go test ./...
go tool golangci-lint run ./...

KDBX security and KDF compatibility notes are documented in docs/kdbx-compatibility.md.

Build

Desktop build:

go build ./cmd/keepassgo

By default, build outputs stamp the app version from git describe --tags --always --dirty. You can override the version shown in KeePassGO with:

go build -ldflags "-X git.julianfamily.org/keepassgo/internal/appui.appVersion=v0.0.1" ./cmd/keepassgo

Arch Linux Package

An AUR-style package definition for the Linux desktop client lives under:

  • packaging/archlinux/keepassgo-git/

From that directory you can build and install it with:

makepkg -si

The package installs:

  • /usr/bin/keepassgo
  • /usr/bin/keepassgo-browser-bridge
  • a desktop entry at /usr/share/applications/keepassgo.desktop
  • application icons under the hicolor theme

Android Packaging

KeePassGO uses Gio, so Android packaging is done with gogio.

The repo now has automated tests for the packaging contract:

  • default APK build arguments
  • required Android SDK / NDK / JDK layout checks

Those are covered by normal test runs:

go test ./...

Install:

go get -tool gioui.org/cmd/gogio@latest

Package:

make apk

make apk prefers a local Java 25 install at JAVA_HOME. If that is not available, it falls back to the repo-managed Docker build image, which also uses Java 25. You still need the Android SDK and NDK installed and configured for real device or release packaging.

Release package:

make apk-release

make apk-release is the production-signing path. It requires a dedicated release keystore at ~/.config/keepassgo/android-release.keystore and a password file at ~/.config/keepassgo/android-release.pass, unless you override RELEASE_SIGNKEY and RELEASE_SIGNPASS_FILE.

Automation

Desktop automation is resolved through the secure gRPC API rather than synthetic auto-type. See docs/desktop-automation.md.

On desktop, KeePassGO now listens on a Unix socket by default under the user runtime directory. Set KEEPASSGO_GRPC_ADDR or -grpc-addr to override it, for example tcp://127.0.0.1:47777.

Browser Extension

Firefox and Chromium browser integration is available through the local gRPC API plus a native messaging bridge. See docs/browser-extension.md.

S
Description
Go-based KeePass-compatible password manager
Readme 16 MiB
v0.8.2 Latest
2026-04-28 04:35:23 +00:00
Languages
Go 86.9%
JavaScript 5.2%
Java 5.1%
Python 1.9%
Makefile 0.5%
Other 0.4%