Dark Image Editor

Roadmap Checklist

Current: v0.4.506 · Phase 2D.4 · Quick Mask

Phase 0–7 roadmap for the sprite/image toolkit. Each phase is staged into small, shippable builds so the Dark Image Editor can grow into a full PNG/GIF/JPEG suite.

Done In progress / partly live Planned / not started
One row = one build slice
Phase 0 Dark Shell & Canvas Core
Triple-dark shell, canvas wrapper, and PNG/JPEG import/export.
Done
  • 0.A — Dark Shell Layout Frame
    Dark triple-pane layout: left frame list, center canvas, right properties panel, all running in a dark chrome-inspired shell that mirrors Dark Triple Patcher.
    Done · Layout and chrome shell
  • 0.B — Core Canvas & Basic Tools Canvas
    Single-image canvas with pan/zoom, pixel grid toggle, and a minimal toolbar for selection, move, and basic brush/eraser tools.
    Done · Canvas core and basic tools
  • 0.C — PNG / JPEG Import & Export I/O
    Drag-and-drop import for PNGs and JPEGs, plus export back out with resolution presets and basic metadata preserved where possible.
    Done · Load/save for core formats
  • 0.D — Sprite-Safe Zoom & Pixel Grid Pixels
    Zoom snaps to whole-number scaling factors (1x, 2x, 4x, etc.) and shows a subtle pixel grid at higher zoom levels so sprite edges stay razor-sharp.
    Done · Crisp zoom for pixel art
Phase 1 Color & Tone Adjustments
HSL, brightness, contrast, and gamma — worker-ready.
Done
  • 1.A — Color Pipeline Skeleton Pipeline
    Shared adjustment pipeline for color operations so sliders and tools can stack without repeatedly reprocessing the same pixels on the main thread.
    Done · Unified adjustment stack
  • 1.B — HSL / Brightness / Contrast / Gamma Color
    Hue, saturation, lightness, brightness, contrast, and gamma sliders running in a Web Worker where needed so large sprites stay responsive.
    Done · Bright/contrast/sat/gamma live in v0.3+ builds
  • 1.C — Global Alpha & Tinting Alpha
    Master opacity control plus a tint/multiply overlay to generate palette swaps and status-effect variants without editing source art by hand.
    Done · Global opacity + tint controls live in v0.4.x
  • 1.D — Crop / Resize / Flip / Rotate Transform
    Pixel-perfect crop, resize, flip, and 90° rotation tools that respect grid alignment so pixel art stays crisp and non-blurry.
    Done · Sprite-safe transforms
Phase 2 Transparency & Masking v1 (AI Patch Series)
Color-keying, magic wand, alpha brushes, and unified selection + quick mask (v0.4.506), delivered as staged AI-friendly patches.
Done
  • 2.A — Color-Key Transparency Masking
    Eyedropper-based color keying with tolerance and soft-edge sliders to strip simple backgrounds and convert them into clean alpha.

    Implemented as a three-step AI patch series:
    • 2.A.1 sampling & tolerance curves
    • 2.A.2 UI wiring & live preview
    • 2.A.3 worker/performance tuning for large sprites
    Done · Color-key group with eyedrop/tolerance/soft edge live in v0.4.506 (2.A.1–2.A.3)
  • 2.B — Magic Wand / Flood-Select (Patch Series) Select
    Magic-wand selection based on color similarity and connectivity, with a translucent overlay to show exactly what will become transparent.

    Delivered as a four-step AI patch series:
    • 2.B.1 flood-fill core & basic tolerance
    • 2.B.2 connectivity modes (4/8-neighbor) & region caps
    • 2.B.3 selection overlay / marching-ants preview
    • 2.B.4 worker split, throttling, and performance polish
    Done · Web-worker wand with 4/8-way, region caps & overlay live in v0.4.506 (2.B.1–2.B.4)
  • 2.C — Alpha Brush / Eraser (Micro-Series) Brush
    Paint alpha directly with erase/restore brushes for precise cleanup around claws, toes, and other narrow sprite details. Implemented as a small AI-friendly series:

    • 2.C.1 brush engine & hardness/size controls
    • 2.C.2 edge-behavior tuning plus performance passes
    Done · Alpha brush/eraser with size, hardness & selection lock live in v0.4.506 (2.C.1–2.C.2)
  • 2.D — Selections & Invert / Restrict Region
    Rectangle, ellipse, and freehand selections with “only affect selection” and “exclude selection” modes, refine tools, and Quick Mask. Final consolidation step for Phase 2, built on top of the earlier AI patch series:

    • 2.D.1 base selection tools (rect/ellipse/freehand)
    • 2.D.2 selection modes (replace/add/subtract/intersect)
    • 2.D.3 selection refine (expand/contract/feather)
    • 2.D.4 quick mask overlay & brush-based selection editing
    • 2.D.5 invert/restrict toggles & final integration with 2.A–2.C
    In progress · 2.D.1–2.D.4 (base selections, refine, quick mask) live in v0.4.506; 2.D.5 invert/restrict still planned
Phase 3 Border-Aware Object Detection
Sprite-aware edges to protect toes, claws, and ears, in small AI-sized steps.
In Progress
  • 3.A — Edge Detection for Sprites Edges
    Detect hard sprite borders while respecting low-res, aliased edges so the system can identify “true” silhouettes instead of smeared gradients.

    Implemented as a three-step AI patch series:
    • 3.A.1 base edge mask tuned for sprite outlines
    • 3.A.2 alias-aware thresholding & profile settings
    • 3.A.3 integration and performance passes for large sheets
    Planned · Edge-aware sprite profiles (3 AI patches, 3.A.1–3.A.3)
  • 3.B — Border Lock / Smart Expand Borders
    “Border lock” that keeps edges intact during blur, glow, or shadow passes, plus smart expand/contract that hugs the sprite silhouette instead of a box.

    Implemented as a three-step AI patch series:
    • 3.B.1 border-lock kernel that pins silhouette pixels
    • 3.B.2 outline-following expand/contract operations
    • 3.B.3 stress tests & clamping for extreme effects
    Planned · Protect ears, tails, & toes (3 AI patches, 3.B.1–3.B.3)
  • 3.C — Occlusion-Aware Mask Helpers Masks
    Tools that mark “safe” and “danger” zones around a sprite, using the border model to prevent cutting off fingers, claws, and small details.

    Implemented as a two-step AI patch series:
    • 3.C.1 safe/danger zone classification based on borders
    • 3.C.2 overlay controls & integration with selections
    Planned · Fewer chopped-off parts (2 AI patches, 3.C.1–3.C.2)
  • 3.D — Smart Border Hints for DIE Hints
    Visual overlay that shows where the border detector thinks sprite edges live, so you can confirm alignment before doing any destructive passes.

    Implemented as a two-step AI patch series:
    • 3.D.1 hint overlay rendering & toggles
    • 3.D.2 wiring into selection and masking workflows
    Planned · Visual guard rails (2 AI patches, 3.D.1–3.D.2)
Phase 4 Layers & Multi-Frame Editing
Layer stacks, groups, and animation frame timelines, rolled out as micro-patches.
Planned
  • 4.A — Basic Layer Stack Layers
    Simple layer list with visibility toggles, reordering, rename, and blend modes tuned for sprite work (normal, multiply, screen, overlay, etc.).

    Implemented as a two-step AI patch series:
    • 4.A.1 layer data model & compositing
    • 4.A.2 UI list, reordering, naming, and blend wiring
    Planned · Core layer system (2 AI patches, 4.A.1–4.A.2)
  • 4.B — Layer Groups & Locking Groups
    Nested groups for sprites, shadows, and UI elements with lock controls so accidental edits don’t blow up carefully arranged scenes.

    Implemented as a two-step AI patch series:
    • 4.B.1 group containers & tree editing
    • 4.B.2 lock/solo behaviors plus multi-select shortcuts
    Planned · Organize complex spritesheets (2 AI patches, 4.B.1–4.B.2)
  • 4.C — Multi-Frame Timeline Timeline
    Timeline strip for per-frame editing of animated sprites and GIFs, with onion-skinning and per-frame visibility toggles.

    Implemented as a three-step AI patch series:
    • 4.C.1 frame data model & duplicate/copy tools
    • 4.C.2 timeline strip UI & scrubbing
    • 4.C.3 onion-skinning and per-frame visibility/perf tuning
    Planned · GIF/sprite animation timeline (3 AI patches, 4.C.1–4.C.3)
  • 4.D — Layer-Aware Exports Export
    Export selected layers, groups, or frame ranges directly to PNG strips or GIF sequences, without flattening the whole project.

    Implemented as a two-step AI patch series:
    • 4.D.1 export pipeline for selected layers/groups/ranges
    • 4.D.2 presets & quick targets for spritesheets/GIFs
    Planned · Targeted sprite exports (2 AI patches, 4.D.1–4.D.2)
Phase 5 Automation & Batch Pipelines
Reusable pipelines and bulk sprite operations, in AI-safe chunks.
Planned
  • 5.A — Pipeline Presets Presets
    Save named sequences of operations (key, border-lock, crop, export) as reusable pipelines that can be run on any sprite or GIF.

    Implemented as a three-step AI patch series:
    • 5.A.1 pipeline schema & serialization
    • 5.A.2 execution engine with safe rollback on failure
    • 5.A.3 UI for creating, editing, and reordering steps
    Planned · One-click repeat operations (3 AI patches, 5.A.1–5.A.3)
  • 5.B — Batch Folder Processing Batch
    Run a chosen pipeline over many images at once, with progress reporting, error surfacing, and a final ZIP bundle of all generated outputs.

    Implemented as a three-step AI patch series:
    • 5.B.1 file walker & job queue for large folders
    • 5.B.2 progress/error reporting and cancellation
    • 5.B.3 ZIP/export bundling and log summary UI
    Planned · High-volume sprite cleanup (3 AI patches, 5.B.1–5.B.3)
  • 5.C — Game Profiles & Layout Presets Profiles
    Bundle pipelines, naming patterns, target resolutions, and padding rules into per-game profiles to quickly switch between projects.

    Implemented as a two-step AI patch series:
    • 5.C.1 profile data model & persistence
    • 5.C.2 UI for switching profiles and binding pipelines/layouts
    Planned · Per-minigame configuration layer (2 AI patches, 5.C.1–5.C.2)
  • 5.D — Project Save / Restore Session
    Save open files, per-file adjustments, masks, and key history points into a local project so a session can be closed and resumed later.

    Implemented as a two-step AI patch series:
    • 5.D.1 project snapshot format & autosave
    • 5.D.2 restore logic, migration, and crash-recovery paths
    Planned · Long-running editing sessions (2 AI patches, 5.D.1–5.D.2)
Phase 6 History, Performance & Safety Nets
Undo/redo, snapshots, and safe bulk operations, as structured patch series.
Planned
  • 6.A — Action History & Timeline History
    Per-image history log of significant edits with timestamps, tied into the adjustment stack and alpha masks instead of per-pixel snapshots.

    Implemented as a three-step AI patch series:
    • 6.A.1 history event model tied to adjustments/masks
    • 6.A.2 per-image history timeline UI
    • 6.A.3 performance and retention tuning for long sessions
    Planned · Human-readable change log (3 AI patches, 6.A.1–6.A.3)
  • 6.B — Multi-Step Undo / Redo Undo
    Robust Ctrl+Z / Ctrl+Shift+Z spanning color adjustments, transforms, transparency passes, and brush strokes.

    Implemented as a three-step AI patch series:
    • 6.B.1 undo/redo engine over history events
    • 6.B.2 wiring into editor commands (adjust, transform, brush)
    • 6.B.3 edge-case handling for batch/pipeline operations
    Planned · Feels like a desktop editor (3 AI patches, 6.B.1–6.B.3)
  • 6.C — Snapshots & A/B Compare Compare
    User-defined snapshots (e.g., “Pre-border-fix”) with quick toggle or side-by-side comparison views to visually verify changes.

    Implemented as a two-step AI patch series:
    • 6.C.1 snapshot save/load model with labels
    • 6.C.2 compare/toggle UI and hotkey integration
    Planned · Safe experimentation tools (2 AI patches, 6.C.1–6.C.2)
  • 6.D — Safety Nets for Batch Runs Safety
    Dry-run mode for pipelines, backup zips of original assets, and per-file accept/reject review options before final export.

    Implemented as a two-step AI patch series:
    • 6.D.1 dry-run & backup ZIP creation for pipelines
    • 6.D.2 review UI and accept/reject flow before final export
    Planned · Protects large sprite libraries (2 AI patches, 6.D.1–6.D.2)
  • 6.E — Custom Workspaces & Layout Presets Workspace
    Configurable editor layouts so different tool panels, timelines, and layer stacks can be arranged per project or per user preference without breaking the core UI.

    Implemented as a two-step AI patch series:
    • 6.E.1 workspace layout model, persistence, and default presets
    • 6.E.2 UI for saving, loading, and switching workspaces (per-profile bindings)
    Planned · Customizable editing layouts (2 AI patches, 6.E.1–6.E.2)
Phase 7 Advanced Engine: WebGL / WASM / Smart Tools
Optional high-end path: GPU, WASM, and smart helpers, in staged series.
Planned
  • 7.A — WebGL / WASM Acceleration Engine
    Optional GPU/WASM pipeline for heavier operations like convolutions, large-area blurs, and high-res spritesheets, without blocking the UI.

    Implemented as a three-step AI patch series:
    • 7.A.1 GPU/WASM bootstrap & feature detection
    • 7.A.2 port of one or two heavy ops as prototypes
    • 7.A.3 generalization to more ops plus robust fallback path
    Planned · High-end performance path (3 AI patches, 7.A.1–7.A.3)
  • 7.B — Smart Assist Tools Assist
    Helper tools for repetitive sprite cleanup, border-fixing, and simple background removal, tuned for deterministic and reversible behavior.

    Implemented as a three-step AI patch series:
    • 7.B.1 core Assist API wrapping existing tools
    • 7.B.2 first wave of helpers for border-fix/cleanup
    • 7.B.3 configuration & logging to keep assists predictable
    Planned · Helper layer on top of core tools (3 AI patches, 7.B.1–7.B.3)
  • 7.C — DIE / TDP Integration Hooks Bridge
    Shared hooks and profiles so Dark Image Editor can hand sprites directly into Triple Dark Patcher workflows for ID-aware patch runs.

    Implemented as a two-step AI patch series:
    • 7.C.1 shared profile & hook definitions for passing metadata
    • 7.C.2 wiring integration calls and an end-to-end sample flow
    Planned · Bridge between DIE & TDP (2 AI patches, 7.C.1–7.C.2)
  • 7.D — Experimental Tools & Plugins Plugins
    Space for experimental filters, scriptable tools, and optional plugins that live outside the guaranteed-stable core editor.

    Implemented as a two-step AI patch series:
    • 7.D.1 plugin sandbox and registration model
    • 7.D.2 example experimental tools plus guardrails so failures can’t corrupt core projects
    Planned · Playground for future ideas (2 AI patches, 7.D.1–7.D.2)
Roadmap is aspirational and may shift as DIE evolves. Each build slice is meant to be small enough to ship without stalling the rest of the project.