Metadata-Version: 2.1
Name: esihub
Version: 0.0.3
Summary: An asynchronous client library for EVE ONLINE ESI API
Home-page: https://github.com/siege-green/esihub
License: MIT
Keywords: eve online,sdk,api,esi
Author: MelonCafe
Author-email: contact@siege-green.com
Requires-Python: >=3.11,<4.0
Classifier: Development Status :: 3 - Alpha
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.11
Classifier: Programming Language :: Python :: 3.12
Requires-Dist: aiohttp (>=3.8.0,<4.0.0)
Requires-Dist: black (>=24.3.0,<25.0.0)
Requires-Dist: cachetools (>=5.4.0,<6.0.0)
Requires-Dist: cryptography (>=42.0.8,<43.0.0)
Requires-Dist: fakeredis[aioredis] (>=2.23.3,<3.0.0)
Requires-Dist: flake8 (>=7.1.0,<8.0.0)
Requires-Dist: isort (>=5.10.0,<6.0.0)
Requires-Dist: mkdocs (>=1.6.0,<2.0.0)
Requires-Dist: mkdocs-git-revision-date-localized-plugin (>=1.2.6,<2.0.0)
Requires-Dist: mkdocs-i18n (>=0.4.6,<0.5.0)
Requires-Dist: mkdocs-material (>=9.5.29,<10.0.0)
Requires-Dist: mkdocs-minify-plugin (>=0.8.0,<0.9.0)
Requires-Dist: mypy (>=1.0.0,<2.0.0)
Requires-Dist: prometheus-client (>=0.20.0,<0.21.0)
Requires-Dist: pydantic (>=2.0.0,<3.0.0)
Requires-Dist: pytest (>=7.0.0,<8.0.0)
Requires-Dist: pytest-asyncio (>=0.20.0,<0.21.0)
Requires-Dist: pytest-cov (>=5.0.0,<6.0.0)
Requires-Dist: redis[hiredis] (>=5.0.7,<6.0.0)
Project-URL: Documentation, https://esihub.siege-green.com
Project-URL: Repository, https://github.com/siege-green/esihub
Description-Content-Type: text/markdown

# ESIHub

[![PyPI version](https://badge.fury.io/py/esihub.svg)](https://badge.fury.io/py/esihub)
[![Python Versions](https://img.shields.io/pypi/pyversions/esihub.svg)](https://pypi.org/project/esihub/)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
[![codecov](https://codecov.io/gh/meloncafe/esihub/graph/badge.svg?token=Q5Un3rLAsw)](https://codecov.io/gh/meloncafe/esihub)
[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)

A high-performance, feature-rich Python client for the EVE Online ESI API

[Installation](#installation) •
[Quick Start](#quick-start) •
[Features](#features) •
[Documentation](#documentation) •
[Contributing](#contributing) •
[License](#license)

## Installation

ESIHub requires Python 3.11 or later. Install it with pip:

```bash
pip install esihub
```

## Quick Start

Here's a simple example to get you started:

```python
import asyncio
from esihub import ESIHubClient

async def main():
    client = ESIHubClient()

    async with client:
        # Get character information
        character_id = 12345
        character_info = await client.get_characters_character_id(character_id=character_id)
        print(f"Character Info: {character_info}")

asyncio.run(main())
```

## Features

- ⚡ **Asynchronous Operations**: Built on `aiohttp` for high performance
- 🔄 **Automatic Rate Limiting**: Stay within EVE Online's API guidelines
- 💾 **Efficient Caching**: Reduce unnecessary API calls with Redis integration
- 🔑 **Token Management**: Automatic token refresh and secure storage
- 🛡️ **Robust Error Handling**: Custom exceptions for different error scenarios
- 📝 **Comprehensive Logging**: Detailed logs for easy debugging
- 🎣 **Event Hooks**: Lifecycle events for request customization
- 📦 **Batch Processing**: Make multiple requests concurrently
- ⚙️ **Easy Configuration**: Simple setup with environment variables

## Documentation

For full documentation, please visit our [GitHub Pages](https://esihub.siege-green.com).

## Contributing

We welcome contributions! Please see our [Contributing Guide](CONTRIBUTING.md) for more details.

## License

ESIHub is released under the MIT License. See the [LICENSE](LICENSE) file for more details.

