A local vault manager designed to securely store and manage your vaults https://lprs.4rs.nl
Find a file
Awiteb 2cfddbbcbd
All checks were successful
Write changelog / write-changelog (push) Successful in 24s
Rust CI / Rust CI (push) Successful in 2m54s
chore: Update README.md
Signed-off-by: Awiteb <a@4rs.nl>
2024-08-21 17:09:35 +00:00
.forgejo docs: Update issues template 2024-08-21 16:30:00 +00:00
.github/workflows refactor: Move from GitHub to Forgejo 2024-03-17 06:59:37 +03:00
docs chore(typo): Fix typo Clening -> Cleaning 2024-08-21 16:32:37 +00:00
src chore: Do not validate password if file exists 2024-08-21 20:07:33 +03:00
.gitignore feat: Lprs docs (#49) 2024-05-17 01:29:37 +03:00
book.toml chore(book): Add git repo icon & edit icon 2024-05-23 21:56:42 +03:00
Cargo.lock chore: Update the version in the lock file 2024-08-21 16:30:40 +00:00
Cargo.toml chore: Add the docs as homepage 2024-08-21 16:30:24 +00:00
CHANGELOG.md chore(changelog): Update changelog 2024-08-20 17:05:04 +00:00
cliff.toml chore(cliff): Support multi line BC description 2024-05-04 18:07:10 +03:00
CONTRIBUTING.md chore(DX): Update the CONTRIBUTING.md 2024-05-07 00:16:51 +03:00
Justfile chore(book): Create CNAME file point to the docs domain 2024-05-18 11:46:59 +03:00
LICENSE Add the license 2023-12-23 22:48:59 +03:00
README.md chore: Update README.md 2024-08-21 17:09:35 +00:00
rust-toolchain.toml chore(DX): Add rust-toolchain.toml 2024-05-07 00:16:31 +03:00
rustfmt.toml chore(DX): Add `rustfmt.toml 2024-05-07 00:16:52 +03:00
sumi.toml chore(git-commit): Set description_case to upper 2024-03-17 10:53:02 +03:00

Lprs

A local vault manager designed to securely store and manage your vaults.

Docs Crates.io Forgejo CI Status Forgejo CD Status

gplv3-or-later

Features

  • Auto checks for updates (Can be disabled).
  • Passing the master password as an argument and via stdin.
  • Changing the master password.
  • Generating a passwords.
  • Store username, password, service name and notes in a vault.
  • Custom fields, you can store any key-value pair in a vault.
  • TOTP (Time-based One-Time Password) generation. Which can be used to generate 2FA codes.
  • Searching for vaults. And list all vaults in json format.
  • Importing and exporting encrypted vaults (in json format).
  • Importing and exporting from/to Bitwarden json format. (Unencrypted)
  • Editing vaults. (The secrets can be passed as arguments or via stdin)
  • Deleting vaults.
  • Getting single field from a vault. (Useful for scripts)
  • Ability to edit, get and remove a vault using its index or name.
  • Auto completion for bash, elvish, fish, powershell and zsh
  • Ability to import and export vaults with different master passwords. (Useful for sharing vaults with others)

Installation

Build from source (MSRV: 1.74.0)

# From crates.io
cargo install lprs
# From source (after cloning the repository)
# The binary will be in target/release/lprs
cargo build --release

This will build Lprs with update checking enabled. If you want to disable update checking, you can build Lprs without the default features by passing the --no-default-features flag.

Pre-built binaries

Pre-built binaries are available for Linux and Windows on the releases page. There is tow version of the binary, one with update checking enabled and other not, the binaries with update checking enabled have the lrps-update-notify prefix.

Usage

Lprs provides a command-line interface for managing your vaults. The following commands are available:

A local CLI vaults manager. For human and machine use

Usage: lprs [OPTIONS] <COMMAND>

Commands:
  add                     Add new vault
  remove                  Remove vault [alias `rm`]
  list                    List your vaults and search [alias `ls`]
  clean                   Clean the vaults file
  edit                    Edit the vault content
  gen                     Generate a password
  get                     Get a entire vault or single field from it
  export                  Export the vaults
  import                  Import vaults
  change-master-password  Change master password, reencrypt the vaults with new password
  completion              Generate shell completion
  help                    Print this message or the help of the given subcommand(s)

Options:
  -f, --vaults-file <VAULTS_FILE>          The vaults json file
  -v, --verbose                            Show the logs in the stdout
  -m, --master-password <MASTER_PASSWORD>  The master password, or you will prompt it
  -h, --help                               Print help (see more with '--help')
  -V, --version                            Print version

Documentation

You can find the full documentation for Lprs here https://lprs.4rs.nl.

Contributing

Contributions to Lprs are welcome! If you would like to contribute, please follow the guidelines outlined in the CONTRIBUTING.md file.

Mirrors

This repository is mirrored on the following platforms:

License

Lprs is licensed under the GPL-3.0 License. This means that you are free to use, modify, and distribute the software under the terms of this license. Please refer to the LICENSE file for more details.


Support

If you like this project and want to support it, you can do so by donating via Ko-fi.

ko-fi