Metadata-Version: 2.4
Name: cyberwave
Version: 0.1.1
Summary: A powerful Python client for controlling various types of robots through simple, AI-driven APIs
Project-URL: Homepage, https://github.com/cyberwave/cyberwave
Project-URL: Documentation, https://github.com/cyberwave/cyberwave/docs
Project-URL: Repository, https://github.com/cyberwave/cyberwave
Project-URL: Issues, https://github.com/cyberwave/cyberwave/issues
Project-URL: Changelog, https://github.com/cyberwave/cyberwave/blob/main/CHANGELOG.md
Author-email: CyberWave Team <team@cyberwave.ai>
License-Expression: MIT
License-File: LICENSE
Keywords: ai,automation,drones,robotic-arms,robotics
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Science/Research
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python
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: Topic :: Scientific/Engineering
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Requires-Python: >=3.8
Requires-Dist: aiohttp>=3.8.0
Requires-Dist: asyncio>=3.4.3
Requires-Dist: numpy>=1.21.0
Requires-Dist: opencv-python>=4.5.0
Requires-Dist: pydantic>=1.9.0
Provides-Extra: dev
Requires-Dist: black>=22.0.0; extra == 'dev'
Requires-Dist: flake8>=4.0.0; extra == 'dev'
Requires-Dist: isort>=5.10.0; extra == 'dev'
Requires-Dist: mypy>=0.950; extra == 'dev'
Requires-Dist: pytest-asyncio>=0.18.0; extra == 'dev'
Requires-Dist: pytest-cov>=3.0.0; extra == 'dev'
Requires-Dist: pytest>=7.0.0; extra == 'dev'
Provides-Extra: publish
Requires-Dist: build>=0.10.0; extra == 'publish'
Requires-Dist: twine>=4.0.0; extra == 'publish'
Description-Content-Type: text/markdown

# CyberWave

CyberWave is a powerful Python client for controlling various types of robots through simple, AI-driven APIs. The platform provides a unified interface for interacting with different robotic systems, from aerial drones to industrial robotic arms, making it easy to implement complex robotic operations with minimal code.

## Features

- **Unified Robot Control**: Control different types of robots (drones, robotic arms) through a single, consistent API
- **AI-Powered Operations**: Leverage machine learning for complex tasks like object detection and autonomous navigation
- **Sensor Integration**: Easy integration with various sensors (cameras, force sensors, etc.)
- **Video-Based Training**: Train models using video demonstrations for complex tasks
- **Safety First**: Built-in safety checks and error handling for all operations

## Supported Robots

- **Aerial Robots**: DJI Tello and compatible drones
- **Robotic Arms**: KUKA KR3 Agilus and compatible industrial arms
- More robot types coming soon!

## Installation

```bash
pip install cyberwave
```

## Quick Start

### Controlling a Drone

```python
from cyberwave import Robot

# Initialize and connect to a drone
drone = Robot("dji/tello")
drone.connect(ip_address="192.168.1.10")

# Execute autonomous flight operations
drone.takeoff()
drone.scan_environment()
location = drone.find_object(instruction='red landing target')
drone.fly_to(location)
drone.land()
```

### Controlling a Robotic Arm

```python
from cyberwave import Robot, VideoTrainer, perform_welding
import asyncio

# Initialize and connect to a robotic arm
arm = Robot("kuka/kr3_agilus")
arm.connect(ip_address="192.168.1.100")
arm.initialize_sensors(["camera", "force_sensor"])

# Train the arm using video demonstrations
trainer = VideoTrainer(model_type="welding")
trainer.train_from_videos(["weld_example1.mp4", "weld_example2.mp4"])

# Execute the trained welding operation
asyncio.run(perform_welding(arm, trainer.model))
```

## Key Features

### 1. Unified Robot Control
- Single API for different robot types
- Consistent command structure across platforms
- Automatic robot type detection and appropriate safety measures

### 2. AI-Powered Operations
- Computer vision for object detection and tracking
- Autonomous navigation and path planning
- Machine learning for complex task execution
- Video-based training for new operations

### 3. Sensor Integration
- Easy sensor initialization and calibration
- Support for multiple sensor types:
  - Cameras
  - Force sensors
  - LIDAR
  - More coming soon

### 4. Safety Features
- Automatic safety checks before operations
- Error handling and recovery procedures
- Collision avoidance
- Emergency stop capabilities

## Development

To set up the development environment:

1. Create a virtual environment:
```bash
python -m venv venv
source venv/bin/activate  # On Windows: venv\Scripts\activate
```

2. Install development dependencies:
```bash
pip install -r requirements.txt
```

## Documentation

For detailed documentation, visit our [documentation site](https://cyberwave.ai/docs).

## License

MIT License

## Contributing

We welcome contributions! Please see our [contributing guide](https://cyberwave.ai/contributing) for details.