Metadata-Version: 2.4
Name: nerva-py
Version: 1.1.1
Summary: Python bindings for the JSON RPC interface of the Nerva (XNV) cryptocurrency.
Author-email: Sayan Bhattacharyya <sayan@sn1f3rt.dev>
License-Expression: MIT
License-File: LICENSE
Keywords: bindings,cryptocurrency,json-rpc,nerva,python
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
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 :: Software Development :: Libraries :: Python Modules
Requires-Python: >=3.10
Requires-Dist: httpx==0.28.1
Description-Content-Type: text/markdown

# Nerva (XNV) Python Library

[![Ruff](https://github.com/sn1f3rt/nerva-py/actions/workflows/ruff.yml/badge.svg)](https://github.com/sn1f3rt/nerva-py/actions/workflows/ruff.yml)
[![Build](https://github.com/sn1f3rt/nerva-py/actions/workflows/build.yml/badge.svg)](https://github.com/sn1f3rt/nerva-py/actions/workflows/build.yml)

## Table of Contents

- [About](#about)
- [Installation](#installation)
    * [Requirements](#requirements)
    * [Setup](#setup)
- [Documentation](#documentation)
- [Support](#support)
- [License](#license)

## About

Python bindings for the JSON RPC interface of the [Nerva (XNV)](https://nerva.one/) cryptocurrency.

## Installation

### Requirements

- Python 3.10+
- [`uv`](https://docs.astral.sh/uv/) (for development only)

### Setup

To install current latest release you can use following command:
```sh
pip install nerva-py
```

To install the latest development version you can use following command:
```sh
uv add git+https://github.com/Sn1F3rt/nerva-py.git --branch main
```

## Documentation

Developers please refer to the docstrings in the code for more information. Full API reference will be available soon.

Here is a simple example to get you started:

```python
import asyncio

from nerva.daemon import Daemon


async def main():
    daemon = Daemon(
        host="localhost",
        port=17566,
        ssl=False,
        username="rpcuser", # omit if daemon was not started with the rpc-login flag
        password="rpcpassword" # omit if daemon was not started with the rpc-login flag
    )

    print(await daemon.get_info())


asyncio.run(main())
```

## Support

- [Issues](https://github.com/sn1f3rt/nerva-py/issues)
- [Discord](https://discord.gg/ufysfvcFwe) - `Development > #nerva-py`

## License

[![License](https://img.shields.io/github/license/sn1f3rt/nerva-py)](LICENSE)

Copyright &copy; 2024-present [Sayan "sn1f3rt" Bhattacharyya](https://sn1f3rt.dev)
