MiniVault


NameMiniVault JSON
Version 0.0.1 PyPI version JSON
download
home_pagehttps://github.com/mauricelambert/MiniVault
SummaryA simple, lightweight vault implemented in pure Python for securely storing and retrieving secrets in light-duty applications.
upload_time2025-09-01 04:43:21
maintainerMaurice Lambert
docs_urlNone
authorMaurice Lambert
requires_python>=3.8
licenseGPL-3.0 License
keywords vault rc6 pure-python lightweight-vault
VCS
bugtrack_url
requirements RC6Encryption
Travis-CI No Travis.
coveralls test coverage No coveralls.
            ![MiniVault Logo](https://mauricelambert.github.io/info/python/code/MiniVault_small.png "MiniVault logo")

# MiniVault

## Description

A simple, lightweight vault implemented in pure Python, using RC6, for
securely storing and retrieving secrets in light-duty applications.

## Requirements

This package require:

 - python3
 - python3 Standard Library
 - RC6Encryption

## Installation

### Pip

```bash
python3 -m pip install MiniVault
```

### Git

```bash
git clone "https://github.com/mauricelambert/MiniVault.git"
cd "MiniVault"
python3 -m pip install .
```

### Wget

```bash
wget https://github.com/mauricelambert/MiniVault/archive/refs/heads/main.zip
unzip main.zip
cd MiniVault-main
python3 -m pip install .
```

### cURL

```bash
curl -O https://github.com/mauricelambert/MiniVault/archive/refs/heads/main.zip
unzip main.zip
cd MiniVault-main
python3 -m pip install .
```

## Usages

### Python script

```python
from MiniVault import *
from getpass import getpass

category = "finance"
role = "db-admin"
username = "alice"
password = "S3cureP@ss!"
master_password = getpass()

vault = PasswordVault.start(
    master_password=master_password, root_dir="my_vault"
)                                                           # master password required to open vault
vault.create_new_category("finance", master_password)       # master password required to create new category
vault.put_credentials(category, role, username, password)   # master password not required to add new password
vault.put_credentials(category, "db-system", username, password)

creds = vault.get_credentials(category, role)
print("Username:", creds["username"] + ",", "Password:", creds["password"])
assert creds["username"] == username, "Invalid username"
assert creds["password"] == password, "Invalid password"
```

## Links

 - [Pypi](https://pypi.org/project/MiniVault)
 - [Github](https://github.com/mauricelambert/MiniVault)
 - [Documentation](https://mauricelambert.github.io/info/python/code/MiniVault.html)

## License

Licensed under the [GPL, version 3](https://www.gnu.org/licenses/).

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/mauricelambert/MiniVault",
    "name": "MiniVault",
    "maintainer": "Maurice Lambert",
    "docs_url": null,
    "requires_python": ">=3.8",
    "maintainer_email": "Maurice Lambert <mauricelambert434@gmail.com>",
    "keywords": "vault, rc6, pure-python, lightweight-vault",
    "author": "Maurice Lambert",
    "author_email": "Maurice Lambert <mauricelambert434@gmail.com>",
    "download_url": "https://files.pythonhosted.org/packages/58/1e/ea17b9ccc1db475f8054f91d050f193ac47c0af9c9df2b44ad374ef4dfc5/minivault-0.0.1.tar.gz",
    "platform": "Windows",
    "description": "![MiniVault Logo](https://mauricelambert.github.io/info/python/code/MiniVault_small.png \"MiniVault logo\")\n\n# MiniVault\n\n## Description\n\nA simple, lightweight vault implemented in pure Python, using RC6, for\nsecurely storing and retrieving secrets in light-duty applications.\n\n## Requirements\n\nThis package require:\n\n - python3\n - python3 Standard Library\n - RC6Encryption\n\n## Installation\n\n### Pip\n\n```bash\npython3 -m pip install MiniVault\n```\n\n### Git\n\n```bash\ngit clone \"https://github.com/mauricelambert/MiniVault.git\"\ncd \"MiniVault\"\npython3 -m pip install .\n```\n\n### Wget\n\n```bash\nwget https://github.com/mauricelambert/MiniVault/archive/refs/heads/main.zip\nunzip main.zip\ncd MiniVault-main\npython3 -m pip install .\n```\n\n### cURL\n\n```bash\ncurl -O https://github.com/mauricelambert/MiniVault/archive/refs/heads/main.zip\nunzip main.zip\ncd MiniVault-main\npython3 -m pip install .\n```\n\n## Usages\n\n### Python script\n\n```python\nfrom MiniVault import *\nfrom getpass import getpass\n\ncategory = \"finance\"\nrole = \"db-admin\"\nusername = \"alice\"\npassword = \"S3cureP@ss!\"\nmaster_password = getpass()\n\nvault = PasswordVault.start(\n    master_password=master_password, root_dir=\"my_vault\"\n)                                                           # master password required to open vault\nvault.create_new_category(\"finance\", master_password)       # master password required to create new category\nvault.put_credentials(category, role, username, password)   # master password not required to add new password\nvault.put_credentials(category, \"db-system\", username, password)\n\ncreds = vault.get_credentials(category, role)\nprint(\"Username:\", creds[\"username\"] + \",\", \"Password:\", creds[\"password\"])\nassert creds[\"username\"] == username, \"Invalid username\"\nassert creds[\"password\"] == password, \"Invalid password\"\n```\n\n## Links\n\n - [Pypi](https://pypi.org/project/MiniVault)\n - [Github](https://github.com/mauricelambert/MiniVault)\n - [Documentation](https://mauricelambert.github.io/info/python/code/MiniVault.html)\n\n## License\n\nLicensed under the [GPL, version 3](https://www.gnu.org/licenses/).\n",
    "bugtrack_url": null,
    "license": "GPL-3.0 License",
    "summary": "A simple, lightweight vault implemented in pure Python for securely storing and retrieving secrets in light-duty applications.",
    "version": "0.0.1",
    "project_urls": {
        "Documentation": "https://mauricelambert.github.io/info/python/code/MiniVault.html",
        "Github": "https://github.com/mauricelambert/MiniVault",
        "Homepage": "https://github.com/mauricelambert/MiniVault"
    },
    "split_keywords": [
        "vault",
        " rc6",
        " pure-python",
        " lightweight-vault"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "581eea17b9ccc1db475f8054f91d050f193ac47c0af9c9df2b44ad374ef4dfc5",
                "md5": "222aa48720b15648f9e961a28b82f9c7",
                "sha256": "b0f2315183403166c4ba3112356d3209076e5bfc0d36610660c2b1d278fd4ec0"
            },
            "downloads": -1,
            "filename": "minivault-0.0.1.tar.gz",
            "has_sig": false,
            "md5_digest": "222aa48720b15648f9e961a28b82f9c7",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.8",
            "size": 23660,
            "upload_time": "2025-09-01T04:43:21",
            "upload_time_iso_8601": "2025-09-01T04:43:21.751590Z",
            "url": "https://files.pythonhosted.org/packages/58/1e/ea17b9ccc1db475f8054f91d050f193ac47c0af9c9df2b44ad374ef4dfc5/minivault-0.0.1.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-09-01 04:43:21",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "mauricelambert",
    "github_project": "MiniVault",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "requirements": [
        {
            "name": "RC6Encryption",
            "specs": []
        }
    ],
    "lcname": "minivault"
}
        
Elapsed time: 1.82324s