Skip to content

fix: review usability and apply improvements#125

Merged
AdamJ merged 5 commits into
mainfrom
claude/review-usability-practices-DC2en
May 14, 2026
Merged

fix: review usability and apply improvements#125
AdamJ merged 5 commits into
mainfrom
claude/review-usability-practices-DC2en

Conversation

@AdamJ
Copy link
Copy Markdown
Owner

@AdamJ AdamJ commented May 14, 2026

Summary

Usability improvements to meet WCAG specifications.

Type of Change

  • New feature
  • Update to existing feature
  • Bug fix
  • Documentation update
  • Other (describe below)

Related Issue

Closes #

Changes Made

Checklist

Complete all items that apply to your change. Check N/A for items that don't apply.

Documentation

Run sync-docs skill with Claude Code to automatically update relevant files.

  • Any notable changes added to the README.md
  • CHANGELOG.md updated accordingly
  • N/A — no README changes

General

  • Branch is up to date with main
  • No unrelated files included in this PR
  • Tested locally by invoking the npm run test, npm run lint, and npm run build

Notes for Reviewers

claude added 5 commits May 14, 2026 02:53
- Wire up DeleteConfirmationDialog in TaskItem so deletes require
  explicit confirmation instead of firing immediately
- Add aria-label to TaskItem delete/edit buttons for screen readers
- Replace browser alert() in TaskEditDialog with a destructive toast
  notification so validation errors don't interrupt workflow
- Add isSaving loading state to CategoryManagement that disables
  buttons and shows progress text during forceSyncToDatabase()
- Show success toasts after category add/update/delete operations
- Use Alert variant="destructive" for auth errors and distinct green
  styling for auth success messages

https://claude.ai/code/session_01WXAUpbzPAbGBi4bv6gxz4w
- Replace raw <input> with shadcn Input component in NewTaskForm so
  styling is consistent with the rest of the UI
- Add proper Label and aria-required/aria-invalid/aria-describedby to
  title field; show inline error message on blur or failed submit
- Add visible labels to category and project selects in NewTaskForm
- Replace text-gray-500 with text-muted-foreground in project client
  select item for theme compliance
- Add success toasts to ProjectManagement after add/update/delete/reset
- Show descriptive empty state with icon and helper copy on TaskList
  when a work day is active but no tasks have been added yet
- Improve Index.tsx "no tasks" copy to direct users to the Tasks page

https://claude.ai/code/session_01WXAUpbzPAbGBi4bv6gxz4w
- Expand TaskItem delete/edit buttons to min-h-[44px] min-w-[44px] so
  they meet WCAG 2.1 AA touch-target size requirements on mobile
- Replace all hardcoded text-gray-* classes with Tailwind theme
  variables (text-foreground, text-muted-foreground) across TaskItem,
  TaskEditDialog, CategoryManagement, ProjectManagement, Navigation,
  DaySummary, and SyncStatus to honour the project's color system and
  improve contrast in dark/light modes
- Replace bg-gray-100/text-gray-800 non-billable badge with
  bg-muted/text-muted-foreground in CategoryManagement
- Add aria-live="polite" aria-atomic="true" to the task count heading
  in TaskList so screen readers announce list changes

https://claude.ai/code/session_01WXAUpbzPAbGBi4bv6gxz4w
- Add aria-required="true" to required inputs in TaskEditDialog,
  CategoryManagement, and ProjectManagement for screen-reader clarity
- Switch required-field asterisk from text-red-700 to text-destructive
  so it respects the theme's semantic color token
- Add visible "Markdown supported" hint label to the description field
  in NewTaskForm so users know formatting is available
- Add "(supports Markdown)" sub-label to description in TaskEditDialog
- Fix NotFound page to use bg-background/text-muted-foreground/text-primary
  instead of hardcoded gray/blue colors
- Fix remaining text-gray-600 in ExportDialog import drop zone

https://claude.ai/code/session_01WXAUpbzPAbGBi4bv6gxz4w
The workflow previously only triggered on pushes to main/master and
PRs targeting those branches. This meant feature branches received no
CI feedback until a PR was opened, and the test suite never ran on
`push` events for branches like `claude/*`.

- Broaden the push trigger to `branches: ["**"]` so every branch push
  runs lint, tests, and both builds
- Add `workflow_dispatch` so maintainers can manually trigger the
  workflow at any time without needing a new commit

https://claude.ai/code/session_01WXAUpbzPAbGBi4bv6gxz4w
@AdamJ AdamJ merged commit efdef8c into main May 14, 2026
1 check passed
@AdamJ AdamJ deleted the claude/review-usability-practices-DC2en branch May 14, 2026 12:46
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants