Metadata-Version: 2.4
Name: xlib-pillars
Version: 1.0.0
Summary: xlib-pillars: A comprehensive library ecosystem with modular pillars for modern Python development
Author-email: xlibrary <contact@xlibrary.dev>
License: MIT
Project-URL: Homepage, https://github.com/ileswade/xlibrary
Project-URL: Repository, https://github.com/ileswade/xlibrary
Project-URL: Documentation, https://github.com/ileswade/xlibrary/blob/main/README.md
Project-URL: Bug Reports, https://github.com/ileswade/xlibrary/issues
Keywords: xlib-pillars,xlibrary,ecosystem,ai,config,pillars,claude,openai,deepseek,media,download,encryption,cli
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
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
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
Classifier: Topic :: System :: Systems Administration
Classifier: Topic :: Utilities
Classifier: Topic :: Multimedia :: Video
Classifier: Topic :: Multimedia :: Graphics
Classifier: Topic :: Security :: Cryptography
Classifier: Topic :: Internet :: WWW/HTTP :: Dynamic Content
Requires-Python: >=3.8
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: requests>=2.28.0
Requires-Dist: typing-extensions>=4.0.0; python_version < "3.10"
Provides-Extra: ai
Requires-Dist: anthropic>=0.25.0; extra == "ai"
Requires-Dist: openai>=1.0.0; extra == "ai"
Requires-Dist: tiktoken>=0.4.0; extra == "ai"
Provides-Extra: claude
Requires-Dist: anthropic>=0.25.0; extra == "claude"
Provides-Extra: openai
Requires-Dist: openai>=1.0.0; extra == "openai"
Requires-Dist: tiktoken>=0.4.0; extra == "openai"
Provides-Extra: deepseek
Requires-Dist: openai>=1.0.0; extra == "deepseek"
Requires-Dist: tiktoken>=0.4.0; extra == "deepseek"
Provides-Extra: config
Requires-Dist: omegaconf>=2.3.0; extra == "config"
Requires-Dist: toml>=0.10.2; extra == "config"
Requires-Dist: tomli>=2.0.1; python_version < "3.11" and extra == "config"
Provides-Extra: download
Requires-Dist: yt-dlp>=2023.12.30; extra == "download"
Requires-Dist: rich>=13.0.0; extra == "download"
Requires-Dist: tqdm>=4.65.0; extra == "download"
Requires-Dist: aiohttp>=3.8.0; extra == "download"
Requires-Dist: aiofiles>=0.8.0; extra == "download"
Provides-Extra: media
Requires-Dist: Pillow>=10.0.0; extra == "media"
Requires-Dist: numpy>=1.24.0; extra == "media"
Requires-Dist: moviepy>=1.0.3; extra == "media"
Requires-Dist: opencv-python>=4.7.0; extra == "media"
Provides-Extra: encryption
Requires-Dist: cryptography>=41.0.0; extra == "encryption"
Provides-Extra: files
Requires-Dist: python-magic>=0.4.27; extra == "files"
Requires-Dist: python-magic-bin>=0.4.14; platform_system == "Windows" and extra == "files"
Provides-Extra: imports
Requires-Dist: python-magic>=0.4.27; extra == "imports"
Requires-Dist: python-magic-bin>=0.4.14; platform_system == "Windows" and extra == "imports"
Requires-Dist: watchdog>=3.0.0; extra == "imports"
Provides-Extra: pipeline
Requires-Dist: pydantic>=2.0.0; extra == "pipeline"
Provides-Extra: cli
Requires-Dist: click>=8.0.0; extra == "cli"
Requires-Dist: rich>=13.0.0; extra == "cli"
Provides-Extra: all
Requires-Dist: anthropic>=0.25.0; extra == "all"
Requires-Dist: openai>=1.0.0; extra == "all"
Requires-Dist: tiktoken>=0.4.0; extra == "all"
Requires-Dist: omegaconf>=2.3.0; extra == "all"
Requires-Dist: toml>=0.10.2; extra == "all"
Requires-Dist: tomli>=2.0.1; python_version < "3.11" and extra == "all"
Requires-Dist: yt-dlp>=2023.12.30; extra == "all"
Requires-Dist: rich>=13.0.0; extra == "all"
Requires-Dist: tqdm>=4.65.0; extra == "all"
Requires-Dist: aiohttp>=3.8.0; extra == "all"
Requires-Dist: aiofiles>=0.8.0; extra == "all"
Requires-Dist: Pillow>=10.0.0; extra == "all"
Requires-Dist: numpy>=1.24.0; extra == "all"
Requires-Dist: moviepy>=1.0.3; extra == "all"
Requires-Dist: opencv-python>=4.7.0; extra == "all"
Requires-Dist: cryptography>=41.0.0; extra == "all"
Requires-Dist: python-magic>=0.4.27; extra == "all"
Requires-Dist: python-magic-bin>=0.4.14; platform_system == "Windows" and extra == "all"
Requires-Dist: python-magic>=0.4.27; extra == "all"
Requires-Dist: python-magic-bin>=0.4.14; platform_system == "Windows" and extra == "all"
Requires-Dist: watchdog>=3.0.0; extra == "all"
Requires-Dist: pydantic>=2.0.0; extra == "all"
Requires-Dist: click>=8.0.0; extra == "all"
Provides-Extra: dev
Requires-Dist: pytest>=7.0.0; extra == "dev"
Requires-Dist: pytest-asyncio>=0.21.0; extra == "dev"
Requires-Dist: pytest-cov>=4.0.0; extra == "dev"
Requires-Dist: black>=22.0.0; extra == "dev"
Requires-Dist: flake8>=4.0.0; extra == "dev"
Requires-Dist: mypy>=0.991; extra == "dev"
Requires-Dist: twine>=4.0.0; extra == "dev"
Requires-Dist: build>=0.10.0; extra == "dev"
Dynamic: license-file

# xlibrary

A comprehensive Python library ecosystem with modular "pillars" that provide specialized functionality for modern development needs.

## Overview

xlibrary is designed with a pillar-based architecture where each pillar is independently installable and has its own dependencies. This allows you to install only the functionality you need while maintaining a clean, modular codebase.

## Available Pillars

### 🤖 AI Pillar
Multi-provider AI abstraction layer supporting:
- **Claude** (Anthropic)
- **OpenAI** (GPT models)
- **DeepSeek**
- **Mock Provider** (for testing)

Features: conversation management, metrics, health monitoring, rate limiting, structured logging.

### ⚙️ Config Pillar
Configuration management with:
- TOML support with interpolation
- Environment variable integration
- Encrypted configuration values
- Schema validation

### 📥 Download Pillar
Advanced download manager supporting:
- Multi-content downloads
- Progress tracking
- Resume capability
- Rich terminal output
- Async operations

### 🎬 Media Pillar
Media processing capabilities:
- Video processing with MoviePy
- Image processing with Pillow
- Watermarking engine
- Animation support
- OpenCV integration

### 🔒 Encryption Pillar
Security and encryption utilities:
- Modern cryptographic operations
- Secure key management
- Data encryption/decryption

### 📁 Files Pillar
File and directory management:
- Advanced file operations
- Magic number detection
- Compression utilities
- Deduplication

### 📦 Imports Pillar
File import management system:
- Pattern matching
- File watching
- Import processing
- Type detection

### 🔄 Pipeline Pillar
Universal pipeline management:
- Data processing pipelines
- Stage management
- Error handling
- Progress tracking

### 💻 CLI Pillar
Professional command-line interface framework:
- Rich terminal output
- Interactive menus
- Progress indicators
- Keyboard navigation

### 📡 Communication Pillar
Communication utilities:
- Email integration
- Message handling
- Provider abstraction

## Installation

### Install Specific Pillars
```bash
# Install just the AI pillar
pip install xlibrary[ai]

# Install configuration management
pip install xlibrary[config]

# Install media processing
pip install xlibrary[media]

# Install download manager
pip install xlibrary[download]
```

### Install Multiple Pillars
```bash
# Install AI and config pillars
pip install xlibrary[ai,config]

# Install all pillars
pip install xlibrary[all]
```

### Development Installation
```bash
pip install xlibrary[dev]
```

## Quick Start

### AI Pillar Example
```python
from xlibrary.ai import AIManager

# Initialize with your preferred provider
ai = AIManager(provider="claude", api_key="your-api-key")

# Simple request
response = ai.request("Hello, how are you?")
print(response.content)

# Streaming response
for chunk in ai.stream("Tell me a story"):
    print(chunk.content, end="")
```

### Config Pillar Example
```python
from xlibrary.config import ConfigManager

# Load and manage configuration
config = ConfigManager("config.toml")
database_url = config.get("database.url")
api_key = config.get("api.key", encrypted=True)
```

### Download Pillar Example
```python
from xlibrary.download import DownloadManager

# Download with progress tracking
downloader = DownloadManager()
result = downloader.download(
    "https://example.com/file.zip",
    destination="./downloads/"
)
```

## Features

- **Modular Architecture**: Install only what you need
- **Type Safety**: Comprehensive type hints throughout
- **Async Support**: Built-in async operations where applicable
- **Rich Logging**: Structured logging with configurable levels
- **Testing**: Comprehensive test suite with 95%+ coverage
- **Documentation**: Extensive documentation and examples

## Requirements

- Python 3.8+
- Individual pillar dependencies as needed

## Development

### Building
```bash
./scripts/build.sh
```

### Testing
```bash
pytest
```

### Code Quality
```bash
black src/ tests/     # Format code
mypy src/xlibrary     # Type checking
flake8 src/ tests/    # Linting
```

## Project Structure

```
xlibrary/
├── src/xlibrary/          # Main package
│   ├── ai/               # AI pillar
│   ├── config/           # Config pillar
│   ├── download/         # Download pillar
│   ├── media/            # Media pillar
│   ├── encryption/       # Encryption pillar
│   ├── files/            # Files pillar
│   ├── imports/          # Imports pillar
│   ├── pipeline/         # Pipeline pillar
│   ├── cli/              # CLI pillar
│   └── communication/    # Communication pillar
├── tests/                # Test suite
├── scripts/              # Build and utility scripts
└── pyproject.toml        # Project configuration
```

## License

MIT License - see LICENSE file for details.

## Contributing

Contributions are welcome! Please ensure:
1. Tests pass: `pytest`
2. Code is formatted: `black src/ tests/`
3. Types are checked: `mypy src/xlibrary`
4. Linting passes: `flake8 src/ tests/`

## Support

- Documentation: [GitHub Repository](https://github.com/xlibrary/xlibrary)
- Issues: [GitHub Issues](https://github.com/xlibrary/xlibrary/issues)
- Repository: [GitHub](https://github.com/xlibrary/xlibrary)
