# PyPokéClient

Synchronous and asynchronous clients to fetch data from PokéAPI
--- ## :material-notebook: Features **PyPokéClient** is a Python wrapper for fetching data from PokéAPI, its main features are: - **Coverage:** all PokéAPI endpoints are covered. - **Data validation:** uses Pydantic dataclasses for the API implementation. - **Flexibility:** can choose between synchronous and asynchronous clients. - **Caching:** can employ a local cache system for faster responses and to respect PokéAPI Fair Use policy. --- ## :material-package: Installation !!! warning "Requirements" This package requires :simple-python: >= 3.12. It is highly advised to create a new virtual environment. === ":simple-uv: uv" ```console $ uv venv ``` === ":simple-python: pip" ```console $ python -m venv .venv ``` !!! note When using the default virtual environment name (i.e.: _.venv_), uv will automatically find and use the virtual environment during subsequent invocations. Then, activate the virtual environment === ":material-linux: Linux" ```console $ source .venv/bin/activate ``` === ":material-microsoft-windows: cmd" ```console > .\.venv\Scripts\activate.bat ``` === ":material-powershell: PowerShell" ```console > .\.venv\Scripts\Activate.ps1 ``` You can now install the package by simply === ":simple-uv: uv" ```console $ uv pip pypokeclient ``` === ":simple-python: pip" ```console $ pip install pypokeclient ```