~bigbes/memestudio · parade

main · last commit 25 days ago · 45ojfkig

← Back to the parade

memestudio-5tg Make preset text editable and add image transform workflow Past Stand

status: closed P1 feature @Eugene Blikh
bd reopen memestudio-5tg
Created byEugene Blikh
Ownerbigbes@gmail.com
Created2026-07-19T23:43:06Z
Started2026-07-19T23:43:09Z
Updated2026-07-20T00:04:41Z
Closed2026-07-20T00:04:41Z
Description
Preset captions are partly baked into layout markup, text styling lacks outline/background controls, two obsolete presets remain exposed, placed images only have one resize behavior, and imported or pasted images cannot be cropped before insertion. Unify preset captions with editable text layers, add explicit text outline and bubble-background styling, remove Speech bubble and 3-panel presets, add ratio-locked versus stretch image resizing, and route image insertion through a live crop preview.
Design
Use per-preset starter text definitions that seed real state.texts only when a preset is selected, so DOM editing, history, persistence, and compose share one model. Extend text records with outlineColor and a background object while preserving defaults for old documents. Extend placed-image records with resizeMode and make the existing corner gesture preserve ratio only in locked mode. Build one native crop dialog backed by canvas, with draggable image positioning and zoom, returning a normalized data URL through the existing image-processing pipeline; use it for gallery imports, base-template imports, and clipboard image files.
Acceptance criteria
Every visible preset caption is represented by an editable/exported text layer; outline color is configurable with presets and a custom picker; text background supports Transparent and Bubble, with Bubble background color, radius, and background-only opacity; Speech bubble and 3-panel presets are removed and preset counts remain accurate; placed images can switch between locked-aspect resize and free stretch, persist that mode, and export identically; file imports and clipboard image paste can preview, reposition, zoom, crop, or use the full image before insertion; existing documents migrate safely; browser interaction checks plus Go, JS, and Docker gates pass.

Depends on

No outgoing dependencies.

Depended on by

Nothing depends on this issue.

No comments.

Close reason

Implemented editable text layers for every remaining preset; configurable outline and Bubble styling; removed Speech bubble and 3-panel; added Ratio/Stretch placed-image resizing; added live crop workflow for base/gallery imports and clipboard paste; documented and validated JS, browser interactions/migration, Go test/race/vet/build, and Docker build.
  • Eugene Blikh created the issue · 2026-07-20T02:43:05Z
  • Eugene Blikh claimed · 2026-07-20T02:43:09Z
  • Eugene Blikh closed the issue · 2026-07-20T03:04:41Z
    Implemented editable text layers for every remaining preset; configurable outline and Bubble styling; removed Speech bubble and 3-panel; added Ratio/Stretch placed-image resizing; added live crop workflow for base/gallery imports and clipboard paste; documented and validated JS, browser interactions/migration, Go test/race/vet/build, and Docker build.
Stored rows — what this pane was built from, as read
issues 1 row
id memestudio-5tg
content_hash 9f0c3bb66b0a4acbb843705e883b950bc48326ffb0fc9fb4e1fe61e74cd01d63
title Make preset text editable and add image transform workflow
description Preset captions are partly baked into layout markup, text styling lacks outline/background controls, two obsolete presets remain exposed, placed images only have one resize behavior, and imported or pasted images cannot be cropped before insertion. Unify preset captions with editable text layers, add explicit text outline and bubble-background styling, remove Speech bubble and 3-panel presets, add ratio-locked versus stretch image resizing, and route image insertion through a live crop preview.
design Use per-preset starter text definitions that seed real state.texts only when a preset is selected, so DOM editing, history, persistence, and compose share one model. Extend text records with outlineColor and a background object while preserving defaults for old documents. Extend placed-image records with resizeMode and make the existing corner gesture preserve ratio only in locked mode. Build one native crop dialog backed by canvas, with draggable image positioning and zoom, returning a normalized data URL through the existing image-processing pipeline; use it for gallery imports, base-template imports, and clipboard image files.
acceptance_criteria Every visible preset caption is represented by an editable/exported text layer; outline color is configurable with presets and a custom picker; text background supports Transparent and Bubble, with Bubble background color, radius, and background-only opacity; Speech bubble and 3-panel presets are removed and preset counts remain accurate; placed images can switch between locked-aspect resize and free stretch, persist that mode, and export identically; file imports and clipboard image paste can preview, reposition, zoom, crop, or use the full image before insertion; existing documents migrate safely; browser interaction checks plus Go, JS, and Docker gates pass.
notes
status closed
priority 1
issue_type feature
assignee Eugene Blikh
estimated_minutes NULL
created_at 2026-07-19T23:43:06Z
created_by Eugene Blikh
owner bigbes@gmail.com
updated_at 2026-07-20T00:04:41Z
closed_at 2026-07-20T00:04:41Z
closed_by_session
external_ref NULL
spec_id
compaction_level 0
compacted_at NULL
compacted_at_commit NULL
original_size NULL
sender
ephemeral 0
wisp_type
pinned 0
is_template 0
mol_type
work_type
source_system
metadata �{}
source_repo
close_reason Implemented editable text layers for every remaining preset; configurable outline and Bubble styling; removed Speech bubble and 3-panel; added Ratio/Stretch placed-image resizing; added live crop workflow for base/gallery imports and clipboard paste; documented and validated JS, browser interactions/migration, Go test/race/vet/build, and Docker build.
event_kind
actor
target
payload
await_type
await_id
timeout_ns 0
waiters
hook_bead
role_bead
agent_state
last_activity NULL
role_type
rig
due_at NULL
defer_until NULL
no_history 0
started_at 2026-07-19T23:43:09Z
is_blocked 0
events 3 rows
id 019f7cc3-0d54-7d32-b385-9b6cf416a480
issue_id memestudio-5tg
event_type created
actor Eugene Blikh
old_value
new_value
comment NULL
created_at 2026-07-20T02:43:05Z
id 019f7cc3-1c1a-7add-90ed-0c2646f60040
issue_id memestudio-5tg
event_type claimed
actor Eugene Blikh
old_value {"id":"memestudio-5tg","title":"Make preset text editable and add image transform workflow","description":"Preset captions are partly baked into layout markup, text styling lacks outline/background controls, two obsolete presets remain exposed, placed images only have one resize behavior, and imported or pasted images cannot be cropped before insertion. Unify preset captions with editable text layers, add explicit text outline and bubble-background styling, remove Speech bubble and 3-panel presets, add ratio-locked versus stretch image resizing, and route image insertion through a live crop preview.","design":"Use per-preset starter text definitions that seed real state.texts only when a preset is selected, so DOM editing, history, persistence, and compose share one model. Extend text records with outlineColor and a background object while preserving defaults for old documents. Extend placed-image records with resizeMode and make the existing corner gesture preserve ratio only in locked mode. Build one native crop dialog backed by canvas, with draggable image positioning and zoom, returning a normalized data URL through the existing image-processing pipeline; use it for gallery imports, base-template imports, and clipboard image files.","acceptance_criteria":"Every visible preset caption is represented by an editable/exported text layer; outline color is configurable with presets and a custom picker; text background supports Transparent and Bubble, with Bubble background color, radius, and background-only opacity; Speech bubble and 3-panel presets are removed and preset counts remain accurate; placed images can switch between locked-aspect resize and free stretch, persist that mode, and export identically; file imports and clipboard image paste can preview, reposition, zoom, crop, or use the full image before insertion; existing documents migrate safely; browser interaction checks plus Go, JS, and Docker gates pass.","status":"open","priority":1,"issue_type":"feature","owner":"bigbes@gmail.com","created_at":"2026-07-19T23:43:06Z","created_by":"Eugene Blikh","updated_at":"2026-07-19T23:43:06Z"}
new_value {"assignee":"Eugene Blikh","status":"in_progress"}
comment NULL
created_at 2026-07-20T02:43:09Z
id 019f7cd6-d330-7ca2-a630-fec29cc6dc7b
issue_id memestudio-5tg
event_type closed
actor Eugene Blikh
old_value
new_value Implemented editable text layers for every remaining preset; configurable outline and Bubble styling; removed Speech bubble and 3-panel; added Ratio/Stretch placed-image resizing; added live crop workflow for base/gallery imports and clipboard paste; documented and validated JS, browser interactions/migration, Go test/race/vet/build, and Docker build.
comment NULL
created_at 2026-07-20T03:04:41Z