Photoshop's "Content-Aware Fill" but you actually own it
A self-hosted web UI that swaps, erases, and out-paints image regions using whatever SOTA model you point it at.

What it does
IOPaint is a browser-based image editor that masks out bits of photos and fills the gaps using AI. It handles three jobs: erase (remove objects/defects), replace (swap in something new via diffusion), and out-paint (extend the canvas). You run it locally with iopaint start, point your browser at localhost:8080, and start scribbling masks.
The interesting bit The project doesn’t lock you into one model. It hot-swaps between specialized erasers like LaMa and a dozen-odd Stable Diffusion inpainting variants (SDXL, BrushNet, PowerPaintV2, etc.), plus plugs in Segment Anything for auto-masking, RealESRGAN for upscaling, and GFPGAN for face repair. It’s basically a modular pipeline where the UI stays constant and the backends are interchangeable.
Key highlights
- Fully self-hosted, runs on CPU, GPU, or Apple Silicon; one-click Windows installer available
- Batch processing via CLI: feed it folders of images and masks, get folders of results back
- Plugin ecosystem includes interactive segmentation, background removal, anime-specific segmentation, super-resolution, and two face-restoration models
- Supports loading local
.ckpt/.safetensorsfiles alongside HuggingFace downloads - Companion macOS/iOS app (OptiClean) for quick object erasure on Apple devices
Caveats
- AMD GPU support on Linux only; Windows ROCm explicitly not supported by PyTorch yet
- Backend requires a manual restart after Python code changes during development
- Model downloads happen at first startup, which can mean a long initial wait
Verdict Worth a look if you want a local, non-subscription alternative to cloud inpainting tools and don’t mind managing PyTorch installs. Skip it if you need a polished consumer app—this is a tinkerer’s workbench with a web UI.