{"id":13575632,"url":"https://github.com/waldirborbajr/kvstok","last_synced_at":"2025-04-12T17:25:12.576Z","repository":{"id":60941033,"uuid":"542284305","full_name":"waldirborbajr/kvstok","owner":"waldirborbajr","description":"KVSToK - is a CLI-base KEY VALUE storage","archived":false,"fork":false,"pushed_at":"2025-03-21T17:28:03.000Z","size":6224,"stargazers_count":18,"open_issues_count":3,"forks_count":2,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-03-21T18:29:57.368Z","etag":null,"topics":["cli-app","go","golang","hacktoberfest","key-value","oss"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/waldirborbajr.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG","contributing":"CONTRIBUTING.md","funding":".github/FUNDING.yaml","license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"github":["waldirborbajr"],"patreon":["waldirborbajr"],"ko_fi":"waldirborbajunior"}},"created_at":"2022-09-27T20:51:32.000Z","updated_at":"2025-03-21T17:28:01.000Z","dependencies_parsed_at":"2023-02-19T17:01:14.881Z","dependency_job_id":"41ac01ac-2ad3-4c4b-9349-30cff2306833","html_url":"https://github.com/waldirborbajr/kvstok","commit_stats":{"total_commits":372,"total_committers":3,"mean_commits":124.0,"dds":"0.16397849462365588","last_synced_commit":"50a53a9db820b969d74bf7f2c9b6d6834d112268"},"previous_names":[],"tags_count":8,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/waldirborbajr%2Fkvstok","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/waldirborbajr%2Fkvstok/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/waldirborbajr%2Fkvstok/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/waldirborbajr%2Fkvstok/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/waldirborbajr","download_url":"https://codeload.github.com/waldirborbajr/kvstok/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248603274,"owners_count":21131769,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cli-app","go","golang","hacktoberfest","key-value","oss"],"created_at":"2024-08-01T15:01:02.763Z","updated_at":"2025-04-12T17:25:12.545Z","avatar_url":"https://github.com/waldirborbajr.png","language":"Go","funding_links":["https://github.com/sponsors/waldirborbajr","https://patreon.com/[\"waldirborbajr\"]","https://ko-fi.com/waldirborbajunior"],"categories":["hacktoberfest"],"sub_categories":[],"readme":"## KVStok\n\n[![Typo Check](https://github.com/waldirborbajr/kvstok/actions/workflows/typo-check.yaml/badge.svg)](https://github.com/waldirborbajr/kvstok/actions/workflows/typo-check.yaml)\n[![Build \u0026 Test](https://github.com/waldirborbajr/kvstok/actions/workflows/build-test.yaml/badge.svg)](https://github.com/waldirborbajr/kvstok/actions/workflows/build-test.yaml)\n[![Build \u0026 Release](https://github.com/waldirborbajr/kvstok/actions/workflows/goreleaser.yaml/badge.svg)](https://github.com/waldirborbajr/kvstok/actions/workflows/goreleaser.yaml)\n\n\u003cp align=\"center\"\u003e\n  \u003cimg width=\"256\" height=\"256\" src=\"./assets/kvstok-logo.png\" /\u003e\n\u003c/p\u003e\n\n`tl;dr:` KVStoK is an open-source software built-in with the main aim of being a personal [KEY][VALUE] store, to keep system variables as parameters or passwords or anything else stored in a single place.\n\nWith KVStoK you do not need to export a variable to use in your terminal routines and you can open a lot of terminals and you will always keep the content available to use.\n\nIs KVStoK good for DevOps? Yes, if you work with DevOps and have to manage a lot of credentials, KVStoK is up to you.\n\nI am a streamer (twitch, youtube, online class, etc.), is KVStoK ready for me? Yes, online producer, KVStoK it is up to you because you do not need anymore hide or blur your screen to type any sensible data.\n\nCan I manage my credentials remotely from the cloud? No, unfortunately, KVStoK, for security reasons is not available to manage or store credentials on the cloud. In the soon future will be possible to manage all credentials in a single place with security and performance.\n\n### How to use\n\n#### Typing `full` command name\n\n```sh\n\n# Store a value\n$ kvstok addkv containerpwd 123SecretPWD\n\n# List all stored values if informed json will generate a json file\n$ kvstok lstkv\nkey_sample1   mysecret\nkey_sample2   anothersecret\nkey_sample3   moresecret\n\n# Grab a value stored into a key\n$ kvstok getkv containerpwd\n123SecretPWD\n\n# Remove a stored key/value from database storage\n$ kvstok delkv containerpwd\n\n# Unicode params are allowed too\n$ kvstok addkv someParam 喵\n$ kvstok getkv someParam\n喵\n\n# Adding a temporarily key TTL of 10 minutes\n# After TTL the key will be automatically removed\n$ kvstok ttladdkv mytempkey mytempvalue 10\n```\n\n### Integrated to shell script\n\n```sh\n#!/bin/bash\n\ndosomething = $(kvstok getkv someParam)\necho ${dosomething}\n..\n.\n```\n\n#### Typing `alias` of command name, first letter\n\n```sh\n\n# Store a value\n$ kvstok a containerpwd 123SecretPWD\n\n# List all stored values if informed json will generate a json file\n$ kvstok l\nkey_sample1   mysecret\nkey_sample2   anothersecret\nkey_sample3   moresecret\n\n# Grab a value stored into a key\n$ kvstok g containerpwd\n123SecretPWD\n\n# Remove a stored key/value from database storage\n$ kvstok d containerpwd\n\n# Unicode params are allowed too\n$ kvstok a someParam 喵\n$ kvstok g someParam\n喵\n\n# Adding a temporarily key TTL of 10 minutes\n# After TTL the key will be automatically removed\n$ kvstok t mytempkey mytempvalue 10\n```\n\n### Integrated to shell script\n\n```sh\n#!/bin/bash\n\ndosomething = $(kvstok g someParam)\necho ${dosomething}\n..\n.\n```\n\n### More examples of use\n\n```sh\ncurl -v -u $(kvstok getkv user):$(kvstok getkv token) https://ghcr.io/v2/\n```\n\n### Install\n\n### Download binary according to you OS version at\n\n#### macOS\n\n1. Download **kvstok_x.x.x_darwin_XXXX.tar.gz**\n2. Extract: `tar xzvf kvstok_x.x.x_darwin_XXXX.tar.gz`\n3. Move to `mv kvstok ~/bin`\n4. Make sure that `$HOME/bin` it is in your library path.\n5. Run `kvstok`\n\n#### Linux\n\n1. Download **kvstok_x.x.x_linux_XXXX.tar.gz**\n2. Extract: `tar xzvf kvstok_x.x.x_linux_XXXX.tar.gz`\n3. Move to `mv kvstok ~/bin`\n4. Make sure that `$HOME/bin` it is in your library path.\n5. Run `kvstok`\n\n## How can I contribute?\n\nKindly refer to [CONTRIBUTING.md](./CONTRIBUTING.md) file to learn how to contribute!\n\nAnd that's it!\nFollow these steps to make your very first pull request.\n\n## License\n\n[Apache](https://github.com/WaldirBorbaJR/kvstok/-/blob/main/LICENSE)\n\n## Legal\n\nCopyright 2022-2023 Waldir Borba Junior (\u003cmailto:wborbajr@gmail.com\u003e)\nSPDX-License-Identifier: Apache-2.0\n\n## TODO\n\n**Note: This file is no longer being updated.**\n\nThe todo file does not represent ALL of the missing features. This file just shows the features which I noticed were missing and I have to implement.\n\nFor a list of all closed TODO: `is:issue is:closed TODO`\n\nFor a list of all open TODO: `is:issue is:open TODO`\n\n## Technology\n\n| \u003cimg src=\"assets/logo.png\" alt=\"logo\" width=\"45\" height=\"45\"/\u003e | \u003cimg src=\"assets/gopher.png\" alt=\"gopher\" width=\"45\" height=\"45\"/\u003e | \u003cimg src=\"assets/nutsdb.png\" alt=\"nutsdb\" width=\"45\" height=\"45\"/\u003e | \u003cimg src=\"assets/cobra.png\" alt=\"cobra\" width=\"45\" height=\"45\"/\u003e |\n\n[KVStoK]|[GO](https://go.dev/)|[NutsDB](https://github.com/nutsdb/nutsdb)|[Cobra](https://cobra.dev/)|\n\n## Star History\n\n[![Star History Chart](https://api.star-history.com/svg?repos=waldirborbajr/kvstok\u0026type=Date)](https://star-history.com/#waldirborbajr/kvstok\u0026Date)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwaldirborbajr%2Fkvstok","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwaldirborbajr%2Fkvstok","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwaldirborbajr%2Fkvstok/lists"}