PAR-215
tesks-ui: Modernise layouts — inline editing, drop boxed edit-forms/cards
The app read as dated: edit-everything-then-"Save changes" forms, separate cards per thing, properties shown twice (a Title/Description field in a right-rail form duplicating the heading + body already on the page). Modernised toward inline, instant-save editing and simpler layout.
Done
Issue detail (flagship):
- Right rail → auto-saving property list. Each control (Status, Assignee, Priority, Project, Due, Parent, Sprint) is a borderless ghost dropdown that PATCHes that one field on change — no Save button. New
patchIssueAction(partial one-field PATCH) +Selectvariant="ghost"/alignprops. - Removed the duplicated Title/Description fields. Title (
InlineTitle) and description (InlineDescription) are click-to-edit in place — title saves on Enter/blur, description opens a markdown editor with Save/Cancel. - Labels edit via a popover; selected render as chips.
- Rail is a hairline column, not a bordered card; description renders as a document (no boxed Panel). Read-only viewers get a matching compact list. Optimistic update + graceful revert on failure. Touch keeps a visible description edit affordance. Vote control slimmed.
Project detail: the Context form no longer sits expanded on the read page — shows rendered context + a subtle Edit affordance that reveals the form (Save/Cancel) on demand (ProjectContext).
Intentionally left as forms
Lists/board/projects index are already clean. Create (new issue) and config (settings rows, label/status editors, release add/remove) keep explicit Save — mid-typing a name shouldn't auto-commit, and per-field Save there matches Linear/GitHub settings UX. Can extend inline editing into settings if desired.
Verified via the embedded-PG visual harness (dark/light/mobile) + a Playwright interaction pass (optimistic save applies, no error-boundary blowups, all editors open). Shipped to develop: f5dec0d (detail), e4aacb3 (project context).
Comments
No comments yet.
Activity
- tesks description: Description updated
- tesks changed status to Status → Pending Release
- tesks created the issue