main · last commit
25 days ago ·
45ojfkig
memestudio-8mr Use selected images inside presets and expose meme actions
Past Stand
bd reopen memestudio-8mr
| Created by | Eugene Blikh |
| Owner | bigbes@gmail.com |
| Created | 2026-07-20T00:22:44Z |
| Started | 2026-07-20T00:22:52Z |
| Updated | 2026-07-20T00:36:10Z |
| Closed | 2026-07-20T00:36:10Z |
Non-classic presets currently render placeholder gradients instead of the selected template, image mirroring is hard to discover, saved memes can only be renamed through a hidden double-click gesture, and the inspector contains an unwanted local-render footer. Make preset image slots use the active template automatically with an explicit way to choose replacement images, expose mirroring for inserted image layers, add a visible rename action for My Memes, and remove the footer.
Represent preset image cells as addressable slots. Resolve each slot from a user override first, then the active template, then the existing placeholder. Render the same resolution path in DOM previews and canvas export, and let users select a slot to choose an existing gallery/template image or import through the current crop workflow. Keep placed-image mirroring on the layer model but expose it as a clear Mirror control. Add an explicit rename button to each saved-meme row while preserving inline rename behavior.
Demotivator, 4-panel, 2-panel, Comparison, and Deep-fried show the active template inside their image areas automatically; each preset image area can be replaced when no suitable template is selected and DOM/export agree; image layers have an obvious horizontal mirror action that persists and exports; My Memes rows have a visible rename action; the Local/Rendered in your browser footer is gone; old documents load with placeholder fallbacks; browser interaction checks plus JS, Go, and Docker gates pass.
No outgoing dependencies.
Nothing depends on this issue.
| id | memestudio-8mr |
| content_hash | 1e3adb3219ffb8ca6883db4f88a88857b55ff0f877cf99795ceb9302198c6020 |
| title | Use selected images inside presets and expose meme actions |
| description | Non-classic presets currently render placeholder gradients instead of the selected template, image mirroring is hard to discover, saved memes can only be renamed through a hidden double-click gesture, and the inspector contains an unwanted local-render footer. Make preset image slots use the active template automatically with an explicit way to choose replacement images, expose mirroring for inserted image layers, add a visible rename action for My Memes, and remove the footer. |
| design | Represent preset image cells as addressable slots. Resolve each slot from a user override first, then the active template, then the existing placeholder. Render the same resolution path in DOM previews and canvas export, and let users select a slot to choose an existing gallery/template image or import through the current crop workflow. Keep placed-image mirroring on the layer model but expose it as a clear Mirror control. Add an explicit rename button to each saved-meme row while preserving inline rename behavior. |
| acceptance_criteria | Demotivator, 4-panel, 2-panel, Comparison, and Deep-fried show the active template inside their image areas automatically; each preset image area can be replaced when no suitable template is selected and DOM/export agree; image layers have an obvious horizontal mirror action that persists and exports; My Memes rows have a visible rename action; the Local/Rendered in your browser footer is gone; old documents load with placeholder fallbacks; browser interaction checks plus JS, Go, and Docker gates pass. |
| notes | |
| status | closed |
| priority | 1 |
| issue_type | feature |
| assignee | Eugene Blikh |
| estimated_minutes | NULL |
| created_at | 2026-07-20T00:22:44Z |
| created_by | Eugene Blikh |
| owner | bigbes@gmail.com |
| updated_at | 2026-07-20T00:36:10Z |
| closed_at | 2026-07-20T00:36:10Z |
| 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 active-template inheritance and persisted per-panel overrides for all non-classic presets, Image-tool panel replacement and upload fallback, explicit image Mirror controls, a visible end-to-end My Memes rename action, and removed the local-render footer. Validated static/browser workflows, backend persistence and rename, old-state migration, Go test/race/vet/build, JS syntax, 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-20T00:22:52Z |
| is_blocked | 0 |
| id | 019f7ce7-57b6-72a7-ba00-d67ab7df7d94 |
| issue_id | memestudio-8mr |
| event_type | created |
| actor | Eugene Blikh |
| old_value | |
| new_value | |
| comment | NULL |
| created_at | 2026-07-20T03:22:43Z |
| id | 019f7ce7-7810-7d6d-8dbd-39dd125e5b3a |
| issue_id | memestudio-8mr |
| event_type | claimed |
| actor | Eugene Blikh |
| old_value | {"id":"memestudio-8mr","title":"Use selected images inside presets and expose meme actions","description":"Non-classic presets currently render placeholder gradients instead of the selected template, image mirroring is hard to discover, saved memes can only be renamed through a hidden double-click gesture, and the inspector contains an unwanted local-render footer. Make preset image slots use the active template automatically with an explicit way to choose replacement images, expose mirroring for inserted image layers, add a visible rename action for My Memes, and remove the footer.","design":"Represent preset image cells as addressable slots. Resolve each slot from a user override first, then the active template, then the existing placeholder. Render the same resolution path in DOM previews and canvas export, and let users select a slot to choose an existing gallery/template image or import through the current crop workflow. Keep placed-image mirroring on the layer model but expose it as a clear Mirror control. Add an explicit rename button to each saved-meme row while preserving inline rename behavior.","acceptance_criteria":"Demotivator, 4-panel, 2-panel, Comparison, and Deep-fried show the active template inside their image areas automatically; each preset image area can be replaced when no suitable template is selected and DOM/export agree; image layers have an obvious horizontal mirror action that persists and exports; My Memes rows have a visible rename action; the Local/Rendered in your browser footer is gone; old documents load with placeholder fallbacks; browser interaction checks plus JS, Go, and Docker gates pass.","status":"open","priority":1,"issue_type":"feature","owner":"bigbes@gmail.com","created_at":"2026-07-20T00:22:44Z","created_by":"Eugene Blikh","updated_at":"2026-07-20T00:22:44Z"} |
| new_value | {"assignee":"Eugene Blikh","status":"in_progress"} |
| comment | NULL |
| created_at | 2026-07-20T03:22:52Z |
| id | 019f7cf3-a4aa-7441-b478-86ede8db7013 |
| issue_id | memestudio-8mr |
| event_type | closed |
| actor | Eugene Blikh |
| old_value | |
| new_value | Implemented active-template inheritance and persisted per-panel overrides for all non-classic presets, Image-tool panel replacement and upload fallback, explicit image Mirror controls, a visible end-to-end My Memes rename action, and removed the local-render footer. Validated static/browser workflows, backend persistence and rename, old-state migration, Go test/race/vet/build, JS syntax, and Docker build. |
| comment | NULL |
| created_at | 2026-07-20T03:36:10Z |
No comments.
Close reason