Metadata-Version: 2.4
Name: pixeldojo
Version: 1.0.0
Summary: Professional Python client, CLI, and GUI for PixelDojo AI Image Generation API
Project-URL: Homepage, https://pixeldojo.ai
Project-URL: Documentation, https://docs.pixeldojo.ai
Project-URL: Repository, https://github.com/pixeldojo/pixeldojo-python
Author-email: PixelDojo Team <dev@pixeldojo.ai>
License-Expression: MIT
License-File: LICENSE
Keywords: ai,api-client,cli,flux,gui,image-generation
Classifier: Development Status :: 5 - Production/Stable
Classifier: Environment :: Console
Classifier: Environment :: X11 Applications :: Qt
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: End Users/Desktop
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
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: Topic :: Multimedia :: Graphics
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
Classifier: Typing :: Typed
Requires-Python: >=3.10
Requires-Dist: aiofiles>=23.0.0
Requires-Dist: httpx>=0.27.0
Requires-Dist: keyring>=24.0.0
Requires-Dist: pillow>=10.0.0
Requires-Dist: platformdirs>=4.0.0
Requires-Dist: pydantic-settings>=2.1.0
Requires-Dist: pydantic>=2.5.0
Requires-Dist: pyside6>=6.6.0
Requires-Dist: rich>=13.7.0
Requires-Dist: tenacity>=8.2.0
Requires-Dist: typer[all]>=0.12.0
Provides-Extra: dev
Requires-Dist: mypy>=1.8.0; extra == 'dev'
Requires-Dist: pre-commit>=3.6.0; extra == 'dev'
Requires-Dist: pytest-asyncio>=0.23.0; extra == 'dev'
Requires-Dist: pytest-cov>=4.1.0; extra == 'dev'
Requires-Dist: pytest>=8.0.0; extra == 'dev'
Requires-Dist: respx>=0.21.0; extra == 'dev'
Requires-Dist: ruff>=0.2.0; extra == 'dev'
Description-Content-Type: text/markdown

# PixelDojo

Professional Python client, CLI, and GUI for the PixelDojo AI Image Generation API.

> **Note:** This is an unofficial community SDK, not affiliated with or endorsed by PixelDojo.

## Features

- **Async API Client**: High-performance async client with sync wrapper, automatic retries, and connection pooling
- **Beautiful CLI**: Rich terminal output with progress bars, multiple output formats, and batch processing
- **Modern Desktop GUI**: PySide6-based application with dark theme, image gallery, and real-time generation
- **Type-Safe**: Full Pydantic models and type hints throughout
- **Secure**: Keyring-based API key storage

## Installation

```bash
# Install from source
pip install -e /home/ares/pixeldojo

# Or install dependencies manually
pip install httpx pydantic pydantic-settings tenacity typer rich PySide6 pillow platformdirs keyring aiofiles
```

## Quick Start

### As a Library

```python
from pixeldojo import PixelDojoClient

# Async usage (recommended)
async with PixelDojoClient(api_key="your-key") as client:
    result = await client.generate(
        "A beautiful sunset over mountains",
        model="flux-pro",
        aspect_ratio="16:9",
    )
    print(result.images[0].url)

# Sync usage
from pixeldojo import PixelDojoSyncClient

with PixelDojoSyncClient(api_key="your-key") as client:
    result = client.generate("A cyberpunk cityscape")
    for image in result.images:
        print(image.url)
```

### CLI

```bash
# Set API key (saved securely)
pixeldojo config set-key

# Generate an image
pixeldojo generate "A beautiful sunset over mountains"

# Generate with options
pixeldojo generate "Portrait of a cat" --model flux-1.1-pro --aspect-ratio 3:4 --num 2

# Output as JSON
pixeldojo generate "Logo design" --output json

# Download images
pixeldojo generate "Abstract art" --download ./output

# List available models
pixeldojo models

# List aspect ratios
pixeldojo ratios

# Launch GUI
pixeldojo gui
```

### Desktop GUI

```bash
# Launch directly
pixeldojo-gui

# Or via CLI
pixeldojo gui
```

## Available Models

| Model | Description |
|-------|-------------|
| `flux-pro` | High-quality professional image generation |
| `flux-1.1-pro` | Enhanced Flux Pro with improved quality |
| `flux-1.1-pro-ultra` | Maximum quality Flux model |
| `flux-dev` | Development/testing Flux model |
| `qwen-image` | Optimized for text rendering in images |
| `wan-image` | Fast generation with cinematic style |

## Aspect Ratios

- `1:1` - Square (1024x1024)
- `16:9` - Landscape wide
- `9:16` - Portrait tall
- `4:3` - Landscape standard
- `3:4` - Portrait standard
- `3:2` - Landscape photo
- `2:3` - Portrait photo

## Configuration

Environment variables:
- `PIXELDOJO_API_KEY`: API authentication key
- `PIXELDOJO_API_URL`: Base API URL (default: https://pixeldojo.ai/api/v1)
- `PIXELDOJO_TIMEOUT`: Request timeout in seconds (default: 120)
- `PIXELDOJO_MAX_RETRIES`: Maximum retry attempts (default: 3)
- `PIXELDOJO_DEBUG`: Enable debug mode

## License

MIT License
