Metadata-Version: 2.4
Name: kevinbotlib
Version: 1.0.0a13
Summary: The KevinbotLib Robot Development Framework
Project-URL: Documentation, https://meowmeowahr.github.io/kevinbotlib/
Project-URL: Issues, https://github.com/meowmeowahr/kevinbotlib/issues
Project-URL: Source, https://github.com/meowmeowahr/kevinbotlib
Author-email: Kevin Ahr <meowmeowahr@gmail.com>
License-Expression: LGPL-3.0-or-later
License-File: LICENSE
Classifier: Development Status :: 2 - Pre-Alpha
Classifier: License :: OSI Approved :: GNU Lesser General Public License v3 (LGPLv3)
Classifier: Programming Language :: Python
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: Programming Language :: Python :: Implementation :: CPython
Classifier: Programming Language :: Python :: Implementation :: PyPy
Requires-Python: >=3.10
Requires-Dist: ansi2html>=1.9.2
Requires-Dist: click~=8.2.0
Requires-Dist: darkdetect>=0.8.0
Requires-Dist: deprecated>=1.2.18
Requires-Dist: jinja2~=3.1.6
Requires-Dist: loguru~=0.7.3
Requires-Dist: opencv-python~=4.11.0
Requires-Dist: orjson~=3.10.18
Requires-Dist: paramiko>=3.5.1
Requires-Dist: platformdirs~=4.3.8
Requires-Dist: psutil>=7.0.0
Requires-Dist: pybase64~=1.4.1
Requires-Dist: pydantic~=2.11.4
Requires-Dist: pyftpdlib~=2.0.1
Requires-Dist: pysdl2~=0.9.17
Requires-Dist: pyserial~=3.5
Requires-Dist: pyside6-addons>=6.9.0
Requires-Dist: pyside6-essentials>=6.8.0.2
Requires-Dist: pyside6>=6.9.0
Requires-Dist: qtawesome>=1.4.0
Requires-Dist: qtpy>=2.4.3
Requires-Dist: redis>=6.1.0
Requires-Dist: superqt>=0.7.3
Requires-Dist: wakepy>=0.10.2.post1
Provides-Extra: dev
Requires-Dist: mike; extra == 'dev'
Requires-Dist: mkdocs; extra == 'dev'
Requires-Dist: mkdocs-material; extra == 'dev'
Requires-Dist: mkdocstrings[python]>=0.18; extra == 'dev'
Requires-Dist: pillow; extra == 'dev'
Requires-Dist: pyinstaller; extra == 'dev'
Description-Content-Type: text/markdown

<p align="center">
  <img src="https://github.com/meowmeowahr/kevinbotlib/raw/main/docs/media/icon.svg" alt="Kevinbot v3 logo" width=120/>
</p>

# KevinbotLib

[![Ruff](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/ruff/main/assets/badge/v2.json)](https://github.com/astral-sh/ruff)
[![uv](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/uv/main/assets/badge/v0.json)](https://github.com/astral-sh/uv)
[![Hatch project](https://img.shields.io/badge/%F0%9F%A5%9A-Hatch-4051b5.svg)](https://github.com/pypa/hatch)
[![PyPI - Version](https://img.shields.io/pypi/v/kevinbotlib.svg)](https://pypi.org/project/kevinbotlib)
[![PyPI - Python Version](https://img.shields.io/pypi/pyversions/kevinbotlib.svg)](https://pypi.org/project/kevinbotlib)
[![Codacy Badge](https://app.codacy.com/project/badge/Grade/0a806fcc04e441538d3c92d42ab3f7ca)](https://app.codacy.com/gh/meowmeowahr/kevinbotlib/dashboard?utm_source=gh&utm_medium=referral&utm_content=&utm_campaign=Badge_grade)

-----

**The KevinbotLib Robot Development Framework**

KevinbotLib includes many utility classes for developing robots, such as communication, joystick input, logging, and more. KevinbotLib also includes out-of-the-box applications to interact and control KevinbotLib robots.

## Table of Contents

- [KevinbotLib](#kevinbotlib)
  - [Table of Contents](#table-of-contents)
  - [Installation](#installation)
  - [Developing](#developing)
    - [Set up module in development mode](#set-up-module-in-development-mode)
    - [Formatting](#formatting)
  - [License](#license)

## Installation

```console
pip install kevinbotlib
```

## Developing

### Set up module in development mode

- Install hatch
  
  [Hatch Installation](https://hatch.pypa.io/1.12/install/) (I recommend using pipx)
- Clone this repo

  ```console
  git clone https://github.com/meowmeowahr/kevinbotlib && cd kevinbotlib
  ```

* Create env

  ```console
  hatch env create
  ```

* Activate env

  ```console
  hatch shell
  ```

### Formatting

Formatting is done through ruff. You can run the formatter using:

```console
hatch fmt
```

## License

`kevinbotlib` is distributed under the terms of the [LGPL-3.0-or-later](https://spdx.org/licenses/LGPL-3.0-or-later.html) license.

All KevinbotLib binaries are distributed under the terms of the [GPL-3.0-or-later](https://spdx.org/licenses/GPL-3.0-or-later.html) license due to the inclusion of several GPL dependencies.
