Skip to main content

Lightweight immutable key-value store using S3 versioning

Project description

ImmuKV - Python Client

Lightweight immutable key-value store using S3 versioning.

Installation

pip install immukv

Quick Start

from immukv import ImmuKVClient, Config

config = Config(
    s3_bucket="your-bucket",
    s3_region="us-east-1",
    s3_prefix=""
)

# Identity functions for JSON values (use custom encoders/decoders for complex types)
def identity(x): return x

with ImmuKVClient(config, identity, identity) as client:
    # Write
    entry = client.set("key1", {"value": "data"})
    print(f"Committed: {entry.version_id}")

    # Read
    latest = client.get("key1")
    print(f"Latest: {latest.value}")

Features

  • Immutable log - All writes append to global log
  • Fast reads - Single S3 request for latest value
  • Hash chain - Cryptographic integrity verification
  • No database - Uses S3 versioning only
  • Auto-repair - Orphaned entries repaired automatically

See the full documentation for more details.

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

immukv-0.1.22.tar.gz (40.3 kB view details)

Uploaded Source

Built Distribution

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

immukv-0.1.22-py3-none-any.whl (23.4 kB view details)

Uploaded Python 3

File details

Details for the file immukv-0.1.22.tar.gz.

File metadata

  • Download URL: immukv-0.1.22.tar.gz
  • Upload date:
  • Size: 40.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for immukv-0.1.22.tar.gz
Algorithm Hash digest
SHA256 920ce9f9cc2d26c7c68ec90468588cb1a2af81eebfd7b129b2b4d92db174ec3c
MD5 448112fcfae163110c6716b5034825a2
BLAKE2b-256 7961a03be0407748b69d39783662df7510ab8eddb8b27ed3d1470f666f5c1408

See more details on using hashes here.

Provenance

The following attestation bundles were made for immukv-0.1.22.tar.gz:

Publisher: build.yml on Portfoligno/immukv

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file immukv-0.1.22-py3-none-any.whl.

File metadata

  • Download URL: immukv-0.1.22-py3-none-any.whl
  • Upload date:
  • Size: 23.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for immukv-0.1.22-py3-none-any.whl
Algorithm Hash digest
SHA256 5cda254c9359dde0330ddb3012105414abb917c2c3ee0f873715b66b80f46a57
MD5 edd245ad08803dbc11f28decede85229
BLAKE2b-256 3d3ab92866baafd65695e9449ca155a4d96293ea6381645a97b44294cf32db3f

See more details on using hashes here.

Provenance

The following attestation bundles were made for immukv-0.1.22-py3-none-any.whl:

Publisher: build.yml on Portfoligno/immukv

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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