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

#612 in Cryptography

41 downloads per month

MIT license

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

Main

  • get | show - Get a secret
  • add - Set a secret
  • save - Save the secrets to a file
  • append - Append a secret to a file
  • edit - Edit a secret
  • load - Load secrets from a file
  • all - Show all secrets
  • delete - Remove a secret
  • backup - Backup your secrets to a tar file
  • restore - Restore your secrets from a tar file
  • reset - 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 the space 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 the set 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 the set 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

~30–43MB
~678K SLoC