jpisani0 / Locals-Password-Manager

Locally stored and encrypted password manager
0 stars 0 forks source link

Create CLI interface classes #7

Closed jpisani0 closed 1 month ago

jpisani0 commented 1 month ago

User should be able to call and run the program from the CLI only for use in headless environments and terminal emulators.

The program should only run in CLI if a flag is specified when calling it, such as "--nogui" or "-t". If called without this flag, it should still open the GUI version of the program if available. In a headless environment, the program should run in the CLI regardless.

When running in CLI, a sort of "shell" should be run that users can use to create a new password list, unlock an existing password list, view their passwords in the list, delete a list, etc.

Ex. "locals -t" should start the shell, and the user can create a new password list by using "create passwordList.lcl". The shell will then walk through the process, prompting the user for an answer such as the password, encryption method, etc.

When running in the CLI, the program should also warn the user when they are viewing a decrypted password entry that their CLI likely logged the password printed out the CLI in plain text, and that they should consider deleting it for maximum security. It should also display a similar warning when first opening the shell.