Metadata-Version: 2.1
Name: aiopokeapi
Version: 0.1.7
Summary: An asynchronous API wrapper for the pokeapi.
Author: beastmatser
License: MIT
Platform: unix
Platform: linux
Platform: osx
Platform: cygwin
Platform: win32
Classifier: Development Status :: 5 - Production/Stable
Classifier: Framework :: AsyncIO
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Natural Language :: English
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.8
Classifier: Topic :: Internet
Classifier: Topic :: Software Development :: Libraries
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: Topic :: Utilities
Classifier: Typing :: Typed
Requires-Python: >=3.8
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: aiofiles==23.2.1
Requires-Dist: aiohttp>=3.7.4
Provides-Extra: testing
Requires-Dist: pytest>=6.0; extra == "testing"
Requires-Dist: pytest-cov>=2.0; extra == "testing"
Requires-Dist: mypy>=0.910; extra == "testing"
Requires-Dist: flake8>=3.9; extra == "testing"
Requires-Dist: tox>=3.24; extra == "testing"

<p align="center">
   <h1 align="center"> AioPokéApi</h1>
   <p align="center"> An Asynchronous API wrapper for the <a href="https://pokeapi.co">PokéApi</a>.
</p>
<p align="center">
   <img id="tests" src="https://img.shields.io/github/actions/workflow/status/beastmatser/aiopokeapi/tests.yml?branch=main&label=Tests&logo=github&style=flat-square">
   <img id="pypi-version" src="https://img.shields.io/pypi/v/aiopokeapi?label=Pypi%20version&logo=pypi&logoColor=ffffff&style=flat-square">
   <img id="python-version" src="https://img.shields.io/pypi/pyversions/aiopokeapi?label=Python%20version&logo=python&logoColor=ffffff&style=flat-square">
   <img id="license" src="https://img.shields.io/github/license/beastmatser/aiopokeapi?label=License&style=flat-square">
   <img id="style" src="https://img.shields.io/badge/Code%20style-black-black?style=flat-square">
</p>
<p align="center">
   <a href="https://github.com/beastmatser/aiopokeapi/issues/new/choose"> Report issue</a>
   ·
   <a href="https://github.com/beastmatser/aiopokeapi/issues/new/choose"> Request feature</a>
   ·
   <a href="https://github.com/beastmatser/aiopokeapi/fork"> Fork project</a>
</p>

## 🗝️ Key Features

- Use of modern Python keywords: `async` and `await`.
- Every object is fully type hinted.
- Objects get cached, this increases speed and avoids unnecessary API requests.

## 🌍 Documentation

AioPokéApi has a very minimal website, which you can find [here](https://beastmatser.github.io/aiopoke/). It also has some [documentation](https://beastmatser.github.io/aiopoke/docs/).

## ☄️ Installation

```sh
pip install aiopokeapi
```

<details>

<summary>
    ⚙️ <i> Didn't work?</i>
</summary>

Depending on your Python installation, you might need to use one of the
following:

- Python is not in PATH

  ```sh
  path/to/python.exe -m pip install aiopokeapi
  ```

- Python is in PATH but pip is not

  ```sh
  python -m pip install aiopokeapi
  ```

- Unix systems can use pip3/python3 commands

  ```sh
  pip3 install aiopokeapi
  ```

  ```sh
  python3 -m pip install aiopokeapi
  ```

- Using multiple Python versions

  ```sh
  py -m pip install aiopokeapi
  ```

</details>

## 🚀 Getting started

Aiopoke's goal is to be simple and easy to use:

```py
import asyncio
import aiopoke

async def main():
   client = aiopoke.AiopokeClient()

   ability = await client.get_ability(1)
   generation = await ability.generation.fetch()

   await client.close()

asyncio.run(main())
```

Or even better, using a context manager:

```py
# in main()
async with aiopoke.AiopokeClient() as client:
   ability = await client.get_ability(1)
   generation = await ability.generation.fetch()
```
