This release is a pre-release and may not be stable for production use.
Key to Multivalue Storage - kms
kms - a tiny side project tuned into a library.
JSON storage wrapper and editor. Created with love by Boss_1s.
Once upon a time, this was just a small project to solve a problem: the over-steep learning curve for scratchattach's database functionality. Now, I have decided to make it a library, something with humble beginnings with big hopes in its future.
This is, after all, the greatest piece of a CPython progam I have made. ;)
Badges
Download
Status
Info & Docs
Installation
Install with pip:
pip install -U key-multivalue-storage
Or, download the latest version of the .whl file in the releases page
You can also choose to download the development environment alongside the package:
pip install -U key-multivalue-storage[dev]
The development package includes Pylint and Griffe for testing and finding breaking changes. You can see the tests in the test folder.
Usage
- Create a Storage object to wrap the data to be stored:
>>> from key_multivalue_storage import Storage
>>> my_db = Storage("my_top_level_key", mysubkey="myvalue", myothersk="anotherval")
- To store the object, use
Storage.store().
>>> my_db.store("database.json")
Data stored successfully in 'database.json'.
- You can change certain global variables for each
Storageinstance.
>>> Storage.indent = 4 # indent size of JSON files
>>> Storage.encode = True # Whether to encode stored values
- Load the data back into a Storage object:
>>> import key_multivalue_storage as kms
>>> loaded_db = kms.Load.by_key("database.json", "my_top_level_key") # You can also use Storage.Load.by_key()
>>> loaded_db = my_db
True
- You can also cast a Storage object into a dictionary!
>>> dict_db = dict(my_db)
>>> dict_db
{"my_top_level_key":{"mysubkey":"myvalue","myothersk":"anotherval"}}
There's a lot more to this library that what meets the eye.
See the full documentation here!
Contribute
Roadmap
Report a Bug
Have a GREAT day/night! :)
Metadata
Release files for key-multivalue-storage 1.3.2.20260826b2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| key_multivalue_storage-1.3.2.20260826b2.tar.gz | 49.2 kB | With provenance | Details for key_multivalue_storage-1.3.2.20260826b2.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| key_multivalue_storage-1.3.2.20260826b2-py3-none-any.whl | Python 3 | none | any | Details for key_multivalue_storage-1.3.2.20260826b2-py3-none-any.whl |
Total release size: 86.3 kB
Release files / key_multivalue_storage-1.3.2.20260826b2.tar.gz
| Download URL | key_multivalue_storage-1.3.2.20260826b2.tar.gz |
|---|---|
| Size | 49.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
e686c66b612600b5906bd3b79ccc45a49cda3997be671d54d0cc46969b8b0061
|
|
BLAKE2b-256 checksum How to use checksums |
7c1f465ec0bf0d45606c2581b234d2b1d5f5349fce15c78d5702398b72a769b2
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Aug 27, 2026.
Transparency logRelease files / key_multivalue_storage-1.3.2.20260826b2-py3-none-any.whl
| Download URL | key_multivalue_storage-1.3.2.20260826b2-py3-none-any.whl |
|---|---|
| Size | 37.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
97473e8f6ffab42c1eb292da7cf5aeb28677e9d536f6d5c0d5cf0a8702875b28
|
|
BLAKE2b-256 checksum How to use checksums |
bd072d537f56710a31b6a9aa4d03b51d39f6bb599dcb081198daffcf6b6cc0fd
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Aug 27, 2026.
Transparency logSecurity for key-multivalue-storage 1.3.2.20260826b2
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
Full provenance
All 2 files in this release have been uploaded with provenance metadata.
Attestation for key_multivalue_storage-1.3.2.20260826b2.tar.gz
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Aug 27, 2026.
Transparency logA note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.