# Konpeito Konpeito is a personal key-value store CLI that can be used to store **anything** securely to/from the system's keyring. [![Crates.io](https://img.shields.io/crates/v/konpeito)](https://crates.io/crates/konpeito) ![License](https://img.shields.io/crates/l/konpeito) ## How it works Konpeito uses the Secret Service API (provided by the `keyring` crate) to store items. This means that the items are stored in the system's keyring, which is a secure(ish) way to store items. The keyring is encrypted and can only be accessed by the user that created it. This mean that Konpeito is not an actual database, but a wrapper around the keyring API to store tokens, passwords, or any other kind of data and easily retrieve it for CLI usage or scripting. It also means that Konpeito relies on an existing keyring implementation, which means security is not guaranteed as the encryption is done by the keyring implementation, which varies depending on the OS, as follows: | OS | Keyring implementation | | ------- | ----------------------------------------- | | Linux | Linux keyutils, GNOME Keyring, or KWallet | | macOS | macOS Keychain | | Windows | Windows Credential Manager | Konpeito reads and writes values using Base64 encoding, this means that you can store any kinds of data, not limited to just text. ## Usage To store items: ```bash konp set key value ``` If you want to store a file or something from stdin: ```bash konp set key < file ``` To retrieve items: ```bash konp get key ``` To delete keys: ```bash konp delete key ``` To list all keys for konpeito: ```bash konp list ``` ## Installation Simply install this crate From source: ```bash cargo install --path . ``` From crates.io: ```bash cargo install konpeito ```