Metadata-Version: 2.4
Name: aggienaut-common
Version: 0.1.6
Summary: A collection of common utilities and modules for AggieNaut projects
Author-email: AggieNaut Team <alecmkrueger@tamu.edu>
License: MIT
Project-URL: Homepage, https://github.com/Aggienaut-Apps/aggienaut-common
Project-URL: Bug Tracker, https://github.com/Aggienaut-Apps/aggienaut-common/issues
Project-URL: Source Code, https://github.com/Aggienaut-Apps/aggienaut-common
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.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
Requires-Python: >=3.8
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: paho-mqtt>=1.6.0
Requires-Dist: pyserial>=3.5
Requires-Dist: toml>=0.10.2
Provides-Extra: dev
Requires-Dist: pytest>=6.0; extra == "dev"
Requires-Dist: pytest-cov; extra == "dev"
Requires-Dist: black; extra == "dev"
Requires-Dist: flake8; extra == "dev"
Dynamic: license-file

# aggienaut-common

Repository containing the AggieNaut utilities - a collection of common modules and utilities for AggieNaut projects.

## Installation

### From PyPI (Recommended)

```bash
pip install aggienaut-common
```

### From Source

```bash
git clone https://github.com/Aggienaut-Apps/aggienaut-common.git
cd aggienaut-common
pip install .
```

### Development Installation

```bash
git clone https://github.com/Aggienaut-Apps/aggienaut-common.git
cd aggienaut-common
pip install -e .[dev]
```

## Building

To build the wheel package:

```bash
python -m build
```

This will create both a wheel (`.whl`) and source distribution (`.tar.gz`) in the `dist/` directory.

## Features

This package includes the following modules:

- **aggie_logging**: Logging utilities and configuration management
- **aggie_mqtt**: MQTT broker and messaging utilities
- **base_classes**: Base hardware and configuration classes
- **command**: Command handling utilities
- **config_framework**: Configuration management framework
- **power_board**: Power board control and management
- **serial_comms**: Serial communication utilities
- **thread_handling**: Thread management and safe sleep utilities
- **type_validation**: Type validation utilities
- **usb_detect**: USB device detection and management
- **utils**: General utility functions

## Dependencies

- `paho-mqtt>=1.6.0`
- `pyserial>=3.5`
- `toml>=0.10.2`

## License

MIT License (see LICENSE file)
