Web editor Slice 2: drag-to-reposition + add items/stands #58

Closed
opened 2026-10-04 23:16:36 -04:00 by Nimby · 0 comments
Collaborator

Follow-up to #57. Make the tools/mapgen/web_editor canvas editable.

  • PUT /api/area/<name> writes a descriptor back, rejecting (and writing nothing) if any item_id/stand_id isn't in the catalog or any item name is empty or duplicated. Item names are the save-file key, so collisions would silently break saves.
  • Drag stands/items on the canvas to change X/Z; a numeric field edits Y.
  • Palette of catalog item types for adding a stand or item.
  • New item names are suggested as {Type}Item{N}, N = one past the highest existing suffix for that type (never renumber existing items). Shown editable before saving.
  • New items default to resting height (mesh.size[1] / 2) so they don't visibly fall in previews.

Verification: Claude checks the API round-trip and validation rejections with curl. Drag feel and legibility need a check on a real browser.

Follow-up to #57. Make the `tools/mapgen/web_editor` canvas editable. - `PUT /api/area/<name>` writes a descriptor back, rejecting (and writing nothing) if any `item_id`/`stand_id` isn't in the catalog or any item `name` is empty or duplicated. Item names are the save-file key, so collisions would silently break saves. - Drag stands/items on the canvas to change X/Z; a numeric field edits Y. - Palette of catalog item types for adding a stand or item. - New item names are suggested as `{Type}Item{N}`, N = one past the highest existing suffix for that type (never renumber existing items). Shown editable before saving. - New items default to resting height (`mesh.size[1] / 2`) so they don't visibly fall in previews. Verification: Claude checks the API round-trip and validation rejections with curl. Drag feel and legibility need a check on a real browser.
Nimby self-assigned this 2026-10-04 23:55:41 -04:00
Nimby closed this issue 2026-10-05 00:04:06 -04:00
Sign in to join this conversation.
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
scruffydude/project-awry#58
No description provided.