A keyboard-driven terminal UI for managing TOTP/HOTP one-time passwords
Project description
authenticator-tui
A terminal UI for managing TOTP/HOTP one-time passwords stored as otpauth:// URLs.
Features
- Live codes — TOTP codes refresh every second with a countdown progress bar
- Filter — press
fand type to narrow the list by issuer or account - Add — paste an
otpauth://URL or fill in fields manually - Delete — remove an entry with auto-save
- Big code view — press Enter on any entry to display the code in large digits
- Clipboard — click any entry to copy the code
- Export — write all entries to a file as
otpauth://URLs
Install
uv tool install git+https://gitlab.com/riphixel/authenticator-tui
Or run directly without installing:
uvx --from git+https://gitlab.com/riphixel/authenticator-tui authenticator-tui otp.txt
Usage
authenticator-tui [path/to/otp.txt]
If no file is given (or the path doesn't exist) a file picker appears on startup. The file is auto-saved on every add or delete.
Keybindings
| Key | Action |
|---|---|
f |
Focus filter input |
↓ in filter |
Jump to first list entry |
↑ on first entry |
Jump back to filter |
a |
Add OTP (modal) |
d |
Delete selected OTP |
e |
Export to file (modal) |
| Enter | Show code in big digits |
| Click | Copy code to clipboard |
| Escape | Clear filter / close modal |
q |
Quit |
Screenshots
Filter
Add OTP
Big code view
File format
One otpauth:// URL per line. Blank lines and lines starting with # are ignored.
otpauth://totp/GitHub:alice@example.com?secret=JBSWY3DPEHPK3PXP&issuer=GitHub
otpauth://totp/PayPal:alice@example.com?secret=JBSWY3DPEHPK3PXP&issuer=PayPal
Development
uv sync
uv run authenticator-tui otp.txt
# tests
uv run pytest
# lint
uvx ruff check .
uvx ruff format --check .
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file authenticator_tui-1.0.0.tar.gz.
File metadata
- Download URL: authenticator_tui-1.0.0.tar.gz
- Upload date:
- Size: 74.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.2.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
945cd21fff9c92bfa27dd6ca89c20f85bcd4a97a28640aa8600bf4d8f9acb5b9
|
|
| MD5 |
9b7d140f34912dab3227cdf30a668474
|
|
| BLAKE2b-256 |
53b796a9f82ef5ab871a8546c29159d644c05c7abd11c9d0947b6cd8cc47ff40
|
File details
Details for the file authenticator_tui-1.0.0-py3-none-any.whl.
File metadata
- Download URL: authenticator_tui-1.0.0-py3-none-any.whl
- Upload date:
- Size: 12.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.2.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f00c56b6a4a159876c2f038e2235ba41819b72b830bed2185adaf2b3b9b7cf08
|
|
| MD5 |
9017d64f96ec81ea45f02e48afc3e617
|
|
| BLAKE2b-256 |
5db5fb12644a0035a520d8b1d178dffe5e8238bbf2c624048cf411d8f4aacc95
|