A local vault manager designed to securely store and manage your vaults https://lprs.4rs.nl
Find a file
Awiteb 6f5ca5f452
All checks were successful
Rust CI / Rust CI (pull_request) Successful in 2m3s
Write changelog / write-changelog (push) Successful in 4s
Rust CI / Rust CI (push) Successful in 1m58s
fix: Reject empty string field value
Signed-off-by: Awiteb <a@4rs.nl>
2024-07-24 11:03:42 +03:00
.forgejo chore: Remove --unset-all extensions.worktreeconfig 2024-05-21 16:42:48 +03:00
.github/workflows refactor: Move from GitHub to Forgejo 2024-03-17 06:59:37 +03:00
docs docs: Update edit command docs 2024-07-24 10:36:17 +03:00
src fix: Reject empty string field value 2024-07-24 11:03:42 +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: Bump the version to 2.0.0-rc.0 2024-05-20 08:01:42 +03:00
Cargo.toml chore: Bump the version to 2.0.0-rc.0 2024-05-20 08:01:42 +03:00
CHANGELOG.md chore(changelog): Update changelog 2024-07-24 07:45:41 +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-05-20 08:00:40 +03: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 the master 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
  -V, --version                            Print version

Documentation

You can find the full documentation for Lprs on the official website at 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.


ko-fi