Introduction
Welcome to the OpenGPEX documentation — the comprehensive reference for the open-source, industrial-grade web image editor.
[!IMPORTANT] Documentation Lag & Maintenance Notice OpenGPEX is actively developed and iterating rapidly. Due to limited maintainer bandwidth, this documentation may occasionally lag behind the latest codebase changes.
If you notice any discrepancies, the source code is the ultimate source of truth. Contributions to update and correct these guides are highly welcome — please consider opening a Pull Request!
What is OpenGPEX?
OpenGPEX is an evolving, high-performance, browser-native Graphics and Photo Editor built for professional web-based workflows. We provide polished, essential editing tools today, backed by a robust and high-performance canvas engine, and is designed with longevity in mind. As your needs grow, you can extend any capability seamlessly via our modular plugin system.
Core Capabilities
OpenGPEX organizes its features around three primary pillars:
1. Essential Features (Core Editor)
- Professional Brush Engine: Catmull-Rom spline smoothing with stamp-based rendering. Adjustable size, opacity, hardness, and Pen pressure support.
- Inline Text Editing: Native contenteditable DOM with full IME support, 8-direction resize handles, and DPR-aware rasterization.
- Non-Destructive Eraser: Erases via bitmap masks — original layer data is never lost. Hold Cmd/Ctrl to restore erased regions.
- Precision Clip & Selection: Five selection tools (Rectangle, Ellipse, Lasso, Magic Wand, AI SAM) with feathering, smart guides, and selection operations (Peel/Stamp/Invert/Offset/Alpha Extract).
- Professional Color Adjustments: Curves (RGB + per-channel), Levels (histogram + auto), Channel Mixer (3×3 matrix, 7 presets), Color Balance (shadow/midtone/highlight, preserve luminosity), plus basic sliders (brightness, contrast, saturation, hue, blur).
- Layer Blend Modes: 16 industry-standard blend modes (Normal, Multiply, Screen, Overlay, Soft Light, etc.) with dual Opacity/Fill transparency controls.
- In-Browser AI Tools: Background Removal, Super Resolution (2×/4×), and Interactive Segmentation (SAM 2.1) — all running locally via ONNX Runtime, no cloud required.
- ComfyUI Bridge: Connect to local or remote ComfyUI for advanced AI workflows (inpainting, style transfer, generation) with multi-environment management and real-time progress.
2. Powerful Foundation (Engine Core)
- Zero-Lag Drawing: Fast-track volatile refs bypass React rendering. 60FPS GSAP ticker drives all visual updates.
- Massive Canvas Support: Tiled 512×512 rendering with Mipmap LOD (pyramid) to edit ultra-high-resolution artwork (4K+) without slowdown or memory crashes.
- Viewport-Isolated Undo (TimeTravel): JSON Patch-based incremental undo/redo that preserves navigation state and prevents viewport jumping.
- Pixel-Perfect Precision: Subpixel mask margins and counter-rotation matrix synchronization prevent light-gaps during transformations.
- Background Compositing: Layer blending and file exporting run in Web Workers using OffscreenCanvas, leaving the main UI thread fully responsive.
3. Infinite Extensibility (Plugin System)
- Pluggable Architecture: Built as a powerful, lightweight engine block where every capability is a modular plugin.
- Developer API & Slots: Complete TypeScript typings, command/signal hooks, and layout slot regions make it easy to add custom tools, overlays, and panels.
- Crash-Proof Sandbox: PluginErrorBoundary wraps components to contain errors locally, preventing third-party code from crashing the main editor workspace.
Technology Stack
| Layer | Technology |
|---|---|
| Framework | Next.js 16 (React 19) |
| Styling | Tailwind CSS v4 |
| Animation | Framer Motion 12 & GSAP 3 |
Deployment Models
OpenGPEX supports multiple deployment modes:
- Local Development — Run on your machine with
pnpm dev - Self-Hosted — Deploy to your own infrastructure (Docker, VPS, etc.)
- GPEX-Cloud SaaS — Official cloud service with storage, auth, and collaboration (coming soon)
License
OpenGPEX is released under the GPL-3.0 license. Contributions are welcome via GitHub.
Last updated: 2026-07-30