Skip to main content

A TinyDB storage implementation that uses JSON and encryption.

Project description

Donate Build Status Coverage Status Documentation Status

License: MIT

tinydb-encrypted-jsonstorage

A TinyDB storage implementation that stores values as encrypted json.

Requirements

Python

OS Dependencies:

  • python3, python3-venv, python3-pip

Get Sources

  • git clone git@github.com:stefanthaler/tinydb-encrypted-jsonstorage.git
  • cd tinydb-encrypted-jsonstorage
  • python3 -m venv .env
  • . .env/bin/activate.fish
  • pip install -r requirements.txt

Build

  • follow steps in "Get Sources"
  • pip3 install -r requirements-building.txt
  • python setup.py bdist_wheel

Test

  • follow steps in "Get Sources"
  • pip3 install -r requirements-building.txt
  • python setup.py test

Install

Pip

  • pip install tinydb-encrypted-jsonstorage

Pip + Git

  • pip install git+git://github.com/stefanthaler/tinydb-encrypted-jsonstorag.git#egg=tinydb-encrypted-jsonstorage

Git + Local Pip

  • Follow steps in "Build"
  • pip install ./

Use

Create database

You can use the encrypted storage by adding setting storage parameter of the TinyDB initializer to the EncryptedJSONStorage class.

from tinydb import TinyDB
import tinydb_encrypted_jsonstorage as tae
KEY = "hello"
PATH = ".encrypted_db"
db = TinyDB(encryption_key=KEY, path=PATH, storage=tae.EncryptedJSONStorage)

Change encryption key

You can change the encryption key of the storage by accessing the storage property of your TinyDB database.

db = ...
db.storage.change_encryption_key("NEW_KEY"))

Other operations

For all the other operations, check the TinyDB manual.

TODO

Thanks

  • Shields.io, for providing the github paypal and the MIT license button: https://shields.io/
  • travis-ci.org for providing free continuous integration for open source projects.
  • coveralls.io for providing free continuous code coverage reporting for open source projects.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page