6 releases (breaking)
0.5.0 | Dec 20, 2023 |
---|---|
0.4.1 | Dec 17, 2023 |
0.3.0 | Dec 1, 2023 |
0.2.0 | Nov 16, 2023 |
0.1.0 | Oct 25, 2023 |
#111 in #secret
90KB
769 lines
EnvN
EnvN is the secret manager for busy developers. It is a very simple to use tool that allows you to store your secrets encrypted in a simple file that you can theoretically commit to your repository.
Idealogy and Design
EnvN is designed with simplicity in mind. It is a single binary that you can download and use a package manager to install. It is also designed to be as user friendly as possible for people who are not familiar with the command line.
EnvN can be used as per as your convenience. You can use it as a TUI or a fully compatible CLI with piping and all. It is also designed to be as portable as possible.
Written in rust, EnvN is quite fast and efficient. It is also designed to be as secure as possible. It uses the AES-256 encryption algorithm to encrypt your secrets and store them all in a single SQLite database file.
You don't need to have SQLite installed on your system. EnvN comes with a pre-compiled SQLite library.
Installation
The recommended way to install Envn is to use the cargo package manager. I am working on a more portable way to install EnvN. Please open an issue if you have any suggestions.
Using Cargo
cargo install envn
Usage
Initial Setup
The first time you open EnvN, you will be asked to enter a password. This password will be used to encrypt your secrets. You will be asked to enter this password every time you open EnvN.
You can later reset this, but you will lose all your secrets. So be careful.
Available Commands
get
|show
- Get a secretadd
- Set a secretsave
- Save the secrets to a fileappend
- Append a secret to a fileedit
- Edit a secretload
- Load secrets from a fileall
- Show all secretsdelete
- Remove a secretbackup
- Backup your secrets to a tar filerestore
- Restore your secrets from a tar filereset
- Reset stuff
For more information, run envn help
.
Understanding the CLI Interface
I tried to make the CLI interface as user friendly as possible. You can use the CLI interface in two ways:
-
Interactive Mode - This is the default mode. You can use the arrow keys to navigate through the options and press enter to select an option. You can also use the
tab
key to switch between the options and thespace
key to select an option. -
Command Mode - You can use pass in arguments to the CLI to directly execute a command. For example,
envn set
will directly execute theset
command. You can also use the--help
flag to get help for a command. For example,envn set --help
will show you the help for theset
command.
Contributing
You can contribute to EnvN by:
- Reporting bugs
- Suggesting new features
- Adding new features and fixing bugs
License
EnvN is licensed under the MIT License. See LICENSE for more information.
Dependencies
~31–45MB
~703K SLoC