PyJONDB


NamePyJONDB JSON
Version 2.0 PyPI version JSON
download
home_pagehttps://tago.works/
SummaryA lightweight, encrypted JSON-based database with support for collections, document operations, and aggregation.
upload_time2024-06-01 16:22:58
maintainerNone
docs_urlNone
authort-a-g-o
requires_python>=3.8
licenseNone
keywords encryption database encrypted database json database secure storage lightweight database document store fernet encryption cryptography data security data encryption collections document operations aggregation query nosql python database uuid file-based database local database secure json nested data tree structure data management data linkage collection linking
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # Encrypted JSON Database

## Overview
This package provides a lightweight, encrypted JSON-based database with support for collections, document operations, and aggregation. It uses the `cryptography` library for encryption and decryption of data, ensuring secure storage of your sensitive information.

## Features
- **Encryption and Decryption**: Uses Fernet symmetric encryption to protect your data.
- **Collections**: Supports creating, reading, updating, and deleting collections.
- **Documents**: Allows adding, finding, updating, and deleting documents within collections.
- **Aggregation**: Provides basic aggregation functionality for querying documents.
- **Linking Collections**: Supports linking between collections to create references.
- **Tree Structure**: Allows creating tree structures by linking root documents to their child documents.

## Usage
```python
from pyjondb import database
from pyjondb import session

auth = session.start()
auth.create_user('admin', 'adminpass', roles=['admin', 'user'])

# Authenticate and get a session ID
session_id = auth.authenticate('admin', 'adminpass')

# Create a database instance with the session ID
db = database.init('my_database', 'my_secret_key', auth, debug=True)

# Create a database
db.create(session_id)

# Create a collection
db.create_collection('my_collection', session_id)

# Add a document
db.add_document('my_collection', {'name': 'example'}, session_id)

# Read the collection
print(db.read_collection('my_collection', session_id))
```
### Learn more about it at the docs: https://github.com/t-a-g-o/PyJONDB/wiki

            

Raw data

            {
    "_id": null,
    "home_page": "https://tago.works/",
    "name": "PyJONDB",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.8",
    "maintainer_email": null,
    "keywords": "encryption database, encrypted database, json database, secure storage, lightweight database, document store, fernet encryption, cryptography, data security, data encryption, collections, document operations, aggregation, query, NoSQL, python database, uuid, file-based database, local database, secure json, nested data, tree structure, data management, data linkage, collection linking",
    "author": "t-a-g-o",
    "author_email": "santiago@tago.works",
    "download_url": "https://files.pythonhosted.org/packages/7f/5d/7249aee36044f80f3a551a6483fdea03d9132b520cd90d777d86f46d6de4/pyjondb-2.0.tar.gz",
    "platform": null,
    "description": "# Encrypted JSON Database\r\n\r\n## Overview\r\nThis package provides a lightweight, encrypted JSON-based database with support for collections, document operations, and aggregation. It uses the `cryptography` library for encryption and decryption of data, ensuring secure storage of your sensitive information.\r\n\r\n## Features\r\n- **Encryption and Decryption**: Uses Fernet symmetric encryption to protect your data.\r\n- **Collections**: Supports creating, reading, updating, and deleting collections.\r\n- **Documents**: Allows adding, finding, updating, and deleting documents within collections.\r\n- **Aggregation**: Provides basic aggregation functionality for querying documents.\r\n- **Linking Collections**: Supports linking between collections to create references.\r\n- **Tree Structure**: Allows creating tree structures by linking root documents to their child documents.\r\n\r\n## Usage\r\n```python\r\nfrom pyjondb import database\r\nfrom pyjondb import session\r\n\r\nauth = session.start()\r\nauth.create_user('admin', 'adminpass', roles=['admin', 'user'])\r\n\r\n# Authenticate and get a session ID\r\nsession_id = auth.authenticate('admin', 'adminpass')\r\n\r\n# Create a database instance with the session ID\r\ndb = database.init('my_database', 'my_secret_key', auth, debug=True)\r\n\r\n# Create a database\r\ndb.create(session_id)\r\n\r\n# Create a collection\r\ndb.create_collection('my_collection', session_id)\r\n\r\n# Add a document\r\ndb.add_document('my_collection', {'name': 'example'}, session_id)\r\n\r\n# Read the collection\r\nprint(db.read_collection('my_collection', session_id))\r\n```\r\n### Learn more about it at the docs: https://github.com/t-a-g-o/PyJONDB/wiki\r\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "A lightweight, encrypted JSON-based database with support for collections, document operations, and aggregation.",
    "version": "2.0",
    "project_urls": {
        "Bug Reports": "https://github.com/t-a-g-o/PyJONDB/issues",
        "Homepage": "https://tago.works/",
        "Source": "https://github.com/t-a-g-o/PyJONDB/"
    },
    "split_keywords": [
        "encryption database",
        " encrypted database",
        " json database",
        " secure storage",
        " lightweight database",
        " document store",
        " fernet encryption",
        " cryptography",
        " data security",
        " data encryption",
        " collections",
        " document operations",
        " aggregation",
        " query",
        " nosql",
        " python database",
        " uuid",
        " file-based database",
        " local database",
        " secure json",
        " nested data",
        " tree structure",
        " data management",
        " data linkage",
        " collection linking"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "7f5d7249aee36044f80f3a551a6483fdea03d9132b520cd90d777d86f46d6de4",
                "md5": "a68e82b2bd8401c3296a2cd2adcbf74b",
                "sha256": "5c6f5199edd49fa4428d5128ac03111f392821d6546d1263a455bdc4ccb3acd7"
            },
            "downloads": -1,
            "filename": "pyjondb-2.0.tar.gz",
            "has_sig": false,
            "md5_digest": "a68e82b2bd8401c3296a2cd2adcbf74b",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.8",
            "size": 8884,
            "upload_time": "2024-06-01T16:22:58",
            "upload_time_iso_8601": "2024-06-01T16:22:58.152113Z",
            "url": "https://files.pythonhosted.org/packages/7f/5d/7249aee36044f80f3a551a6483fdea03d9132b520cd90d777d86f46d6de4/pyjondb-2.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-06-01 16:22:58",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "t-a-g-o",
    "github_project": "PyJONDB",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "lcname": "pyjondb"
}
        
Elapsed time: 0.30865s