Metadata-Version: 2.4
Name: loxodo-curses
Version: 0.32.4
Summary: A Password Safe V3 compatible password vault
Project-URL: homepage, https://github.com/shamilbi/loxodo-curses
Author-email: Shamil Bikineyev <shamilbi@gmail.com>, Christoph Sommer <mail@christoph-sommer.de>
License-Expression: GPL-2.0+
License-File: LICENSE.txt
Keywords: password manager,privacy,security
Classifier: Development Status :: 4 - Beta
Classifier: Environment :: Console
Classifier: Natural Language :: English
Classifier: Operating System :: POSIX :: Linux
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Python :: 3.14
Classifier: Programming Language :: Python :: Implementation :: CPython
Classifier: Topic :: Security
Requires-Python: >=3.9
Requires-Dist: mintotp
Description-Content-Type: text/x-rst

|pypi| |github|

loxodo-curses
=============

loxodo-curses is a curses frontend to `Password Safe`_ V3 compatible Password Vault.
A fork of `Loxodo`_.

It uses external utilities:
    * vim - to edit a record (using an anonymous file in memory)
    * xdg-open - to launch a URL
    * xsel - to copy to the clipboard
    * dd - to fill a file in memory with zeros

To generate a password, just run the command ":read !pwmake 96" in Vim (pwmake is part of `libpwquality`_)
or ":read !diceware -d ' ' -s 2" (`diceware`_) or ":read !pwgen -s 25" (`pwgen`_).

Search string may contain word -#tag to exclude tag #tag from the search result.

The app includes a timeout feature that automatically closes it after 30 minutes of inactivity.

Security considerations
-----------------------

This code handles private key material and is written in Python.
No precautions have been taken to lock pages in memory to prevent swapping.
Also no attempt is currently made to securely dispose of memory that may have held private key material.

The current hotkeys
-------------------

    * F1: help screen
    * q, Esc: Quit the program
    * j, Down: Move selection down
    * k, Up: Move selection up
    * PgUp: Page up
    * PgDown: Page down
    * g, Home: Move to first item
    * G, End: Move to last item
    * Alt-{t,u,m,c,g}: Sort by title, user, modtime, created, group
    * Alt-{T,U,M,C,G}: Sort reversed
    * Delete: Delete current record
    * Insert: Insert record
    * d: Duplicate current record
    * e: Edit current record w/o password
    * E: Edit current record w/ password
    * L: Launch URL
    * s: Search records
    * P: Change vault password
    * Ctrl-T: Copy Title to clipboard
    * Ctrl-U: Copy Username to clipboard
    * Ctrl-P: Copy Password to clipboard
    * Ctrl-L: Copy URL to clipboard
    * Ctrl-O: Copy TOTP to clipboard

.. |pypi| image:: https://img.shields.io/pypi/v/loxodo-curses
          :target: https://pypi.org/project/loxodo-curses/
.. |github| image:: https://img.shields.io/github/v/tag/shamilbi/loxodo-curses?label=github
            :target: https://github.com/shamilbi/loxodo-curses/
.. _Password Safe: https://www.pwsafe.org/
.. _Loxodo: https://github.com/sommer/loxodo
.. _libpwquality: https://github.com/libpwquality/libpwquality
.. _diceware: https://pypi.org/project/diceware/
.. _pwgen: https://sourceforge.net/projects/pwgen/files/pwgen/
