Metadata-Version: 2.4
Name: fluxflow-ui
Version: 0.1.1
Summary: Web UI for FluxFlow text-to-image generation
Author: Daniele Camisani
License: MIT
Project-URL: Homepage, https://github.com/danny-mio/fluxflow-ui
Project-URL: Repository, https://github.com/danny-mio/fluxflow-ui
Project-URL: Documentation, https://github.com/danny-mio/fluxflow-ui/blob/main/USER_GUIDE.md
Project-URL: Issues, https://github.com/danny-mio/fluxflow-ui/issues
Keywords: deep-learning,text-to-image,web-ui,flask,gradio
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Science/Research
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
Classifier: Framework :: Flask
Requires-Python: >=3.10
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: fluxflow-training>=0.1.0
Requires-Dist: gradio>=4.0.0
Requires-Dist: flask>=3.0.0
Requires-Dist: flask-cors>=4.0.0
Requires-Dist: torch>=2.0.0
Requires-Dist: transformers>=4.30.0
Requires-Dist: safetensors>=0.3.0
Requires-Dist: diffusers>=0.20.0
Requires-Dist: numpy<2.0,>=1.24.0
Requires-Dist: pillow>=9.0.0
Provides-Extra: dev
Requires-Dist: pytest>=7.4.0; extra == "dev"
Requires-Dist: pytest-cov>=4.1.0; extra == "dev"
Requires-Dist: pytest-timeout>=2.1.0; extra == "dev"
Requires-Dist: pytest-mock>=3.11.0; extra == "dev"
Requires-Dist: black>=23.0.0; extra == "dev"
Requires-Dist: flake8>=6.0.0; extra == "dev"
Requires-Dist: isort>=5.12.0; extra == "dev"
Requires-Dist: mypy>=1.4.0; extra == "dev"
Requires-Dist: ruff>=0.1.0; extra == "dev"
Dynamic: license-file

# FluxFlow UI

Web interface for FluxFlow text-to-image generation and training.

## 🚧 Model Availability Notice

**Training In Progress**: FluxFlow models are currently being trained. The UI is fully functional, but trained model checkpoints are not yet available for download.

**When Available**: Trained checkpoints will be published to [MODEL_ZOO.md](https://github.com/danny-mio/fluxflow-core/blob/main/MODEL_ZOO.md) upon completion of the [TRAINING_VALIDATION_PLAN.md](https://github.com/danny-mio/fluxflow-core/blob/main/TRAINING_VALIDATION_PLAN.md).

**Current Capabilities**: You can use this UI to:
- Configure and launch training runs with your own datasets
- Monitor training progress in real-time
- Test the architecture with your own trained checkpoints

---

## Installation

### Production Install

```bash
pip install fluxflow-ui
```

**What gets installed:**
- `fluxflow-ui` - Web interface for training and generation
- `fluxflow-training` - Training capabilities (automatically installed as dependency)
- `fluxflow` core package (transitively installed)
- CLI command: `fluxflow-ui`

**Package available on PyPI**: [fluxflow-ui v0.1.1](https://pypi.org/project/fluxflow-ui/)

### Development Install

```bash
git clone https://github.com/danny-mio/fluxflow-ui.git
cd fluxflow-ui
pip install -e ".[dev]"
```

## ⚠️ Security Warning

**FluxFlow UI is designed for local development use only.**

- No authentication or authorization
- File browser can access entire filesystem
- Not hardened for production deployment

See [SECURITY.md](SECURITY.md) for details on security measures, limitations, and production deployment warnings.

**Do not expose this application to the internet without additional security hardening.**

---

## Features

- **Training Interface**: Configure and monitor training runs
- **Generation Interface**: Generate images with various parameters
- **Real-time Progress**: Monitor training progress with live updates
- **Model Management**: Load and manage checkpoints
- **Interactive Controls**: Adjust generation parameters in real-time

## Quick Start

### Launch the Web UI

FluxFlow UI supports two interfaces:

**Flask (Primary - Recommended):**
```bash
fluxflow-ui
```

**Gradio (Alternative):**
```bash
python -m fluxflow_ui.app
```

Then open your browser to `http://localhost:7860`

**Note:** Flask is the primary interface with full features. Gradio is provided as an alternative but may have limited functionality.

### Features

#### Training Tab
- Configure training parameters
- Start/stop training runs
- Monitor loss curves and metrics
- View sample generations during training

#### Generation Tab
- Load trained models
- Generate images from text prompts
- Adjust sampling parameters
- Batch generation support

## Package Contents

- `fluxflow_ui.tabs` - UI tab implementations
- `fluxflow_ui.utils` - Config management and training runners
- `fluxflow_ui.templates` - HTML templates
- `fluxflow_ui.static` - CSS and JavaScript assets

## Configuration

The UI runs on `http://0.0.0.0:7860` by default. To customize the host and port, modify the `main()` function in `app_flask.py`.

## Development

Install with development dependencies:

```bash
pip install -e ".[dev]"
```

## Links

- [GitHub Repository](https://github.com/danny-mio/fluxflow-ui)
- [Security Policy](SECURITY.md)
- [User Guide](USER_GUIDE.md)

## License

MIT License - see LICENSE file for details.
