Metadata-Version: 2.4
Name: gitnix
Version: 1.0.0
Summary: Use GitHub repos as an encrypted, high-performance database
Project-URL: Homepage, https://github.com/Quilonix/gitnix
Project-URL: Repository, https://github.com/Quilonix/gitnix
Project-URL: Issues, https://github.com/Quilonix/gitnix/issues
Project-URL: Documentation, https://github.com/Quilonix/gitnix/tree/main/docs
Author-email: Mithun Gowda B <mithungowda.b7411@gmail.com>
License-Expression: MIT
Keywords: database,e2e-encryption,encrypted,git,github,local-first,nosql,sdk,zero-knowledge
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Topic :: Database
Classifier: Topic :: Security :: Cryptography
Classifier: Typing :: Typed
Requires-Python: >=3.10
Requires-Dist: argon2-cffi>=23.1.0
Requires-Dist: httpx>=0.27.0
Requires-Dist: msgpack>=1.0.8
Requires-Dist: pynacl>=1.5.0
Provides-Extra: dev
Requires-Dist: mypy>=1.11.0; extra == 'dev'
Requires-Dist: pytest-asyncio>=0.23.0; extra == 'dev'
Requires-Dist: pytest-cov>=5.0.0; extra == 'dev'
Requires-Dist: pytest>=8.3.0; extra == 'dev'
Requires-Dist: ruff>=0.5.0; extra == 'dev'
Description-Content-Type: text/markdown

# Gitnix Python SDK

Use GitHub repos as an encrypted, high-performance database.

## Installation

```bash
pip install gitnix
```

## Usage

```python
import os
from gitnix import Gitnix
from gitnix.types import GitnixConfig

async def main():
    db = Gitnix(GitnixConfig(
        repo="owner/my-database",
        token=os.environ["GITHUB_TOKEN"],
        password="my-master-password",
    ))

    async with db:
        users = db.collection("users")
        await users.insert({"name": "Alice", "age": 30})
        alice = await users.find_one({"name": "Alice"})
        print(alice)
```

## Features

- Zero-knowledge encryption (GitHub never sees plaintext)
- MongoDB-style queries ($eq, $gt, $in, $or, etc.)
- Binary/image storage with chunking
- Multi-repo overflow when storage limits hit
- Transactions with optimistic locking
- asyncio-native with full type hints
