Conversation
… tool list, tabbed panels Reshells the image editor around the PixelForge handoff design (claude.ai Design). The drawing/state engine is unchanged; everything new is the visual + structural layer that wraps it. ## What changed - **CSS grid layout** (`.pf-shell`) — 4 rows × 3 cols: menu / options / (tools | canvas | right) / status. Tokens scoped to `.pf-root` so PixelForge styling can't leak into the rest of the toolbox. - **MenuBar** — File / Edit / Image / Layer / View with dropdowns; all items wired to existing handlers (open, save, undo, redo, rotate, flip, duplicate / delete layer, zoom, focus). File menu has per-format export (PNG / JPEG / WebP). - **OptionsBar** — context-sensitive per active tool: brush/eraser show stroke + color, shape tools show stroke + color, crop shows the Enter/Esc hint + a Clear-crop button when a crop is applied, others show informative hints. Stub tools render a placeholder hint. - **ToolsPalette** — full 18-tool PS-aligned list, grouped (Selection / Painting / Vector+Type / Annotation / Navigation). FG/BG color swatches and X / D ⇄ ▣ swap/reset controls live at the bottom of the rail. - **RightSidebar** — three stacked panel groups with tab strips: Layers / Channels / Paths · Properties / Info · Adjustments / Navigator. Channels / Paths / Info / Navigator render a "coming soon" stub so the panel surface is complete without lying about functionality. - **StatusBar** — denser, PixelForge-styled, surfaces the current tool + document dimensions + zoom. ## Tools Functional (work end-to-end): Move (V), Crop (C), Eyedropper (I), Brush (B), Eraser (E), Type (T), Rectangle / Ellipse / Line / Arrow shapes, Mask, Mosaic, Zoom (Z). Stub (palette + tooltip + shortcut, but tool action shows a toast): Marquee (M), Lasso (L), Magic Wand (W), Spot Healing (J), Clone Stamp (S), History Brush (Y), Gradient / Paint Bucket (G), Dodge (O), Pen (P), Hand (H). These need either a selection model (marquee/lasso/wand), a flood-fill primitive (bucket), or a vector-path layer (pen) — substantial follow-up PRs. ## Cleanup - Dropped the old `TopActionBar` (its actions are now in the menu bar). - `STUB_TOOLS` lives in `tool-meta.ts` so `ToolsPalette.tsx` only exports components (react-refresh requirement). Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
4 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Reshells the image editor around the PixelForge handoff design (claude.ai
Design). The drawing/state engine is unchanged; everything new is the
visual + structural layer that wraps it.
Shell
(tools | canvas | right) / status. Tokens scoped to `.pf-root` so
PixelForge styling can't leak into the rest of the toolbox.
wired to existing handlers (open, save, undo / redo, rotate, flip,
duplicate / delete layer, zoom, focus). File menu gets per-format
export (PNG / JPEG / WebP).
stroke + color, shape tools show stroke + color, crop shows the
Enter/Esc hint plus a Clear-crop button when a crop is applied. Stub
tools render an honest "placeholder" hint.
Painting / Vector+Type / Annotation / Navigation). FG/BG color swatches
Layers / Channels / Paths · Properties / Info · Adjustments / Navigator.
Channels / Paths / Info / Navigator render a "coming soon" stub so the
panel surface is complete without lying about functionality.
document dimensions + zoom.
Tools
Functional (work end-to-end): Move (V), Crop (C), Eyedropper (I),
Brush (B), Eraser (E), Type (T), Rectangle / Ellipse / Line / Arrow,
Mask, Mosaic, Zoom (Z).
Stub (palette + tooltip + shortcut, but the tool action shows a
toast and leaves state unchanged): Marquee (M), Lasso (L), Magic Wand
(W), Spot Healing (J), Clone Stamp (S), History Brush (Y), Gradient /
Paint Bucket (G), Dodge (O), Pen (P), Hand (H). These need either a
selection model (marquee/lasso/wand), a flood-fill primitive (bucket),
or a vector-path layer (pen) — substantial follow-up PRs.
Cleanup
components (react-refresh requirement).
Test plan
🤖 Generated with Claude Code