Terminal password manager
TermKeyValut is still in development and is not ready for use. Do not have high expectations for this project.
TermKeyValut is my side project to explore Functional Programming, F# and how it works with Terminal.Gui. The idea is to create a password manager that is easy to use and can be used in the terminal. It is by no means secure (although it uses encrypted SQLite database and uses basic encryption) and if your main goal is to have a secure password manager, I would recommend using KeePass, from which I drew inspiration while developing this application.
To install whale you need to have the following dependencies installed on your system:
- .NET
- Modern Terminal - For Windows: Windows Terminal
Once you have the dependencies installed, you can download TermKeyVault using this command:
dotnet tool install --global TermKeyVault
TermKeyVault is constantly being developed, so to update it to the latest version, use the following command:
dotnet tool update --global TermKeyVault
To use TermKeyVault type tkv
in terminal. You will be prompted to enter your master password. If you are using TermKeyVault for the first time, you will be asked to create a new database. After that you will be presented with the main menu.
To get started clone the repository:
git clone https://github.com/MaciekWin3/TermKeyVault
And you are ready to go! Just bare in mind that if you are using TermKeyVault as a password manager, your development setup will conflict with your production setup. Also I recommend using DB Browser for SQLite to access encrytpted SQLite database.
This project was written with the purpose of exploring the F# language and how it interacts with the Terminal.Gui library. My experience has shown that initially, this combination is well-suited for building a simple prototype. However, when it comes to developing more complex applications where two components are interdependent, I'd prefer to use C#. Since this was my first major project in F#, the code quality could have been better, so I encourage contributions.
If you want to contribute to this project, feel free to do so. I am open to any suggestions and improvements.