Spec covers real upload progress (XHR), server-side progress via SSE
for AI tools (Python stderr → bridge.ts → SSE), and a unified
ProgressCard component replacing the fake time-based AIProgressBar.
- Switch from Node.js ONNX to production Python ML libraries:
rembg, Real-ESRGAN, LaMa, PaddleOCR, MediaPipe
- AI models baked into Docker image for instant reliability
- Multi-architecture support (linux/amd64 + linux/arm64)
- No Docker size limits - reliability over size (expect 3-5GB)
- Object Eraser upgraded from experimental to production (LaMa)
- All AI tools now use state-of-the-art models
Critical: Use Real-ESRGAN ONNX (not UpscalerJS/TF.js) for upscaling,
mark Object Eraser as experimental, switch to Debian slim (not Alpine)
for HEIC/libraw/libjxl support, add libraw for RAW formats.
Significant: Revise Docker target to 700MB-1GB, add SSE progress events,
fix StorageAdapter to use streams, add API error schema, define SQLite
write concurrency model, add CORS/SSRF/rate-limiting specs.
Comprehensive PRD covering tech stack (Vite+React+Fastify+Sharp+SQLite),
37+ image tools across 9 categories, Docker deployment on port 1349,
UI/UX architecture, API spec, and development roadmap.