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.6.tar.gz (89.5 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.6-py3-none-any.whl (85.3 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for hvpdb-1.0.6.tar.gz
Algorithm Hash digest
SHA256 8633d6c3c694a9d3ace03fb45ad52530f4e3d9f0a97919ca8c901c8b71e89534
MD5 025552b55b19966ea04e59c7731587d3
BLAKE2b-256 39068b885b437b38cb2b114c89c4ccdca946fdf84f470eb539ced2e48a0fc213

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for hvpdb-1.0.6-py3-none-any.whl
Algorithm Hash digest
SHA256 75947e3136943e79e7ce4be5d365f61749c4d436bbc27225113e3e555d3a43ae
MD5 31d5386048bba91e6620fbcd2202b1f5
BLAKE2b-256 e54db8b344f281ff9593f3cc9ab2e9d443e00716b4a9c48bb2e1c8af421eb4cc

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