Skip to main content

High Velocity Python Database (NoSQL, Embedded, Encrypted)

Project description

HVPDB (High Velocity Python Database)

PyPI version Python Versions License Code Style

The Secure, Embedded, NoSQL Database for Modern Python Apps.

OverviewConceptsInstallationQuick StartBenchmarks


🚀 What is HVPDB?

HVPDB is a local-first, embedded NoSQL database for Python.

It is designed for developers who want:

  • A simple database they fully control
  • Strong encryption by default
  • High-speed local reads/writes
  • No external DB server (no MongoDB / Postgres daemon)

HVPDB combines ideas from:

  • SQLite → embedded, file-based
  • MongoDB → document-oriented
  • Linux tools → CLI-first workflow

Under the hood, it uses:

  • MsgPack for fast serialization
  • ZStandard for compression
  • AES-256-GCM for authenticated encryption

A private, encrypted data store you ship with your app.


🧠 Core Concepts (Important – Read This First)

1. Embedded, Not a Server

HVPDB runs inside your Python process.

  • ❌ No background daemon
  • ❌ No TCP port unless you explicitly deploy
  • ✅ Just a file + Python API
from hvpdb import HVPDB
db = HVPDB("mydb", password="secret")

2. Group ≠ Collection ≠ Table

HVPDB intentionally avoids SQL/Mongo terminology.

HVPDB Term Meaning

Database A folder containing encrypted files Group A logical set of documents Document A Python dict with _id

users = db.group("users")
users.insert({"name": "Alice"})

3. Memory-First, Disk-Safe

Reads are memory-first → extremely fast

Writes go through WAL (Write-Ahead Log)

Disk data is always encrypted

Result:

Fast developer experience

Safe crash recovery

Predictable performance


4. Two Ways to Use HVPDB

Mode Purpose

Python API Application logic HVPShell Human interaction, debugging, inspection

HVPShell is a database editor, not the database itself.


✨ Key Features

🔒 Encryption by Default AES-256-GCM encryption at rest.

⚡ High Performance WAL v2, batched commits, compressed storage.

📦 Transactions (ACID) Atomic commits with rollback support.

🐚 HVPShell (Ops Shell) Interactive CLI with:

auto-complete

rich tables

schema inference

audit & history tools

🕸️ Thread-Safe Safe for FastAPI / AsyncIO / Flask via contextvars.

🌐 Optional HTTP Server Expose your DB via REST when needed.


📦 Installation

pip install hvpdb

⚡ Quick Start (Python API)

from hvpdb import HVPDB

db = HVPDB("mydb", password="super_secret_key")

users = db.group("users")

users.insert({
    "name": "Alice",
    "email": "alice@example.com",
    "role": "admin"
})

users.create_index("email", unique=True)

admin = users.find_one({"role": "admin"})
print(admin["name"])

with db.begin():
    users.insert({"name": "Bob"})
    users.insert({"name": "Charlie"})

db.close()

🖥️ CLI Power (HVPShell)

Initialize database

hvpdb init my_project "secret123"

Enter shell

hvpdb shell my_project "secret123"

Example workflow

target users
make name="Dave" role="dev"
hunt role="dev"
peek
stats login_count

Deploy as API (optional)

hvpdb deploy my_project 8080

📊 Benchmarks

Running on mid-range hardware (Ryzen 7, NVMe SSD):

Operation Ops/Sec Note
Write ~14,000 Batched WAL Commit
Read ~500k+ Memory-first Cache
Index Lookup O(1) Hash Map

Generated via hvpdb shell > benchmark


📂 Project Structure

./hvp/
  └── myapp/
      ├── myapp.hvp          # Encrypted data
      ├── myapp.hvp.log      # WAL
      ├── myapp.hvp.lock
      └── myapp.hvp.writelock

Each database lives in its own folder for clarity and isolation.


👥 Who is HVPDB for?

  • Solo developers

  • Indie hackers

  • Internal tools

  • Security-sensitive apps

  • CLI-first workflows

Not designed for:

  • Massive distributed clusters

  • Multi-terabyte analytics

  • Replacing PostgreSQL at scale

⚠️ Known Limitations

  • Termux / Android: Due to filesystem restrictions (lack of full chmod/flock support on shared storage/FUSE), you may encounter [Errno 38] Function not implemented or permission warnings. This is a platform limitation that cannot be fully resolved in version 1.0.2.

📜 License

Apache License 2.0

✅ Free for personal and commercial use

✅ Modification and redistribution allowed

❗ You may NOT use the name HVPDB, logo, or branding to promote derived products

See LICENSE and TRADEMARK.md for details.

Copyright © 2026 8w6s

Project details


Download files

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

Source Distribution

hvpdb-1.0.3.tar.gz (65.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

hvpdb-1.0.3-py3-none-any.whl (66.9 kB view details)

Uploaded Python 3

File details

Details for the file hvpdb-1.0.3.tar.gz.

File metadata

  • Download URL: hvpdb-1.0.3.tar.gz
  • Upload date:
  • Size: 65.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.14

File hashes

Hashes for hvpdb-1.0.3.tar.gz
Algorithm Hash digest
SHA256 ee49dc5de05beb88dd699e7319b8864b7cdfd4f87cc87eb7c90b88cc3c36bce7
MD5 dc78160665655b5b35836a7b9276fbb4
BLAKE2b-256 73ac37449539a6e860c8550cf4b007a8ba3a32fdb27f8401eee3343552215293

See more details on using hashes here.

File details

Details for the file hvpdb-1.0.3-py3-none-any.whl.

File metadata

  • Download URL: hvpdb-1.0.3-py3-none-any.whl
  • Upload date:
  • Size: 66.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.14

File hashes

Hashes for hvpdb-1.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 37904f28bb188b8043776880c5435a709ce687b6bce712387ed7e63fc9d224b6
MD5 70ff773d1fe7ab2e2690e0c74578d031
BLAKE2b-256 f1655296dd6a5c78f6bcd2a0ee69ccc4aef3a83c8f7d91c04caf9fd3fca033d7

See more details on using hashes here.

Supported by

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