From 2a731d4603407f713acf6394e36886228466c195 Mon Sep 17 00:00:00 2001 From: Christian Cleberg Date: Sun, 2 Aug 2026 15:29:37 -0500 Subject: convert readme to nfo; relicense to 0bsd --- README.md | 159 -------------------------------------------------------------- 1 file changed, 159 deletions(-) delete mode 100644 README.md (limited to 'README.md') diff --git a/README.md b/README.md deleted file mode 100644 index e0fd588..0000000 --- a/README.md +++ /dev/null @@ -1,159 +0,0 @@ -# rpass - -A simple command-line password manager, written in Rust + SQLite. This tool -allows you to manage accounts and generate random passwords containing ASCII -letters, numbers, and punctuation or XKCD-like passphrases. - -Data is encrypted prior to being saved within the SQLite database using the -[fernet](https://docs.rs/fernet/) crate. Encryption and decryption require the -use of a randomly-generated key saved as `vault.key` but the key-file is saved -in plaintext, which means that an attacker that can access the key-file can also -decrypt the database. Further development may allow password-protection of the -key-file; please open an issue or pull request if you want this feature! - ---- - -**NOTE:** This crate is not ready for use in production yet. There are many -items still left to implement prior to a production-ready release - see the -[TODO](#todo) section for more details. - ---- - -## Table of Contents - -- [Usage](#usage) - - [Arguments](#arguments) - - [Examples](#examples) -- [Contributing](#contributing) - - [TODO](#todo) - - [Development](#development) - -## Usage - -[(Back to top)](#table-of-contents) - -All arguments can be passed to the app with the following template: - -```bash -rpass ARGUMENT [VALUES] -``` - -### Arguments - -#### Summary - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Argument (Short)Argument (Long)Explanation
-h--helpPrint the welcome message
-n--newCreate a new account
-l--listList all saved accounts
-e--edit [UUID] [FIELD_NAME]Edit a saved account
-d--delete [UUID]Delete a saved account
-p--purgePurge all accounts and delete the vault
- -## Contributing - -[(Back to top)](#table-of-contents) - -Any and all contributions are welcome. Feel free to fork the project, add -features, and submit a pull request. - -### TODO: - -- [x] Create an account in memory (as a `struct`) -- [x] Allow random password generation -- [x] Allow random passphrase generation -- [x] Create an empty database or file, if not created yet -- [x] Save new accounts to database or file -- [x] Pretty-print all saved accounts -- [ ] Allow editing of a saved account -- [ ] Allow deletion of a saved account -- [ ] Allow purging the database -- [x] Allow user encryption of database or file -- [x] Allow user-created keys to automatically encrypt/decrypt the database or - file -- [ ] Require password to encrypt/decrypt/hash/salt/etc. the key file. -- [ ] Create test suite -- [ ] Publish to crates.io when the package is in a minimally-usable state -- [ ] Restructure and format code according to best practices (dead code, - unused imports, etc.) - -## Development - -### Setup - -```bash -git clone REPO_URL -``` - -```bash -cd REPO -``` - -#### Local Testing - -If you've made changes to the code and would like to test them, use the -following commands. - -```bash -cargo build --release -``` - -```bash -./target/release/REPO --help -``` - -#### Building & Publishing - -If you are ready to push your changes to crates.io, use the commands below. For -beginners, note that you cannot publish changes to a crate you don't own (i.e. -you must be added as a contributor on crates.io). - -```bash -cargo build --release -``` - -```bash -cargo login [API_TOKEN] -``` - -```bash -cargo publish --dry-run -``` - -```bash -cargo publish -``` -- cgit v1.2.3