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.4.tar.gz (68.0 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.4-py3-none-any.whl (68.3 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for hvpdb-1.0.4.tar.gz
Algorithm Hash digest
SHA256 921c72e459278503de792e5c520140bd2361146723f2ba44ec7d4f12c4884009
MD5 e38eba4d3425934ca3c52843101fab9d
BLAKE2b-256 73c0bab1700808e3856bbbf261e341c59b67d586a52678954317e39c64696d36

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for hvpdb-1.0.4-py3-none-any.whl
Algorithm Hash digest
SHA256 2a9d59c7b9d9294148b084926601169eea391d7d2fa192a790207df628fc224a
MD5 26086fe6dfba03fdd9761a379e238318
BLAKE2b-256 5569d0654e7f0cccb8034ffa473d1e17a55a12f9ef7f7d235afd75e4d3fec008

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