Commit Graph

71 Commits

Author SHA1 Message Date
Your Name
d66e90a6d5 add ARIA labels, pressed states, and fix keyboard visibility across card detail components 2026-02-19 19:54:22 +02:00
Your Name
56eab06dc4 add labels and ARIA attributes to filter bar inputs 2026-02-19 19:51:56 +02:00
Your Name
68442ec784 add ARIA tab roles, pressed states, and labels to settings dialog 2026-02-19 19:50:54 +02:00
Your Name
6ca8cfb059 add dialog semantics, focus trap, and ARIA labels to card detail modal 2026-02-19 19:49:25 +02:00
Your Name
21e09279eb improve card thumbnail accessibility: aging opacity, ARIA labels 2026-02-19 19:48:08 +02:00
Your Name
3d2fc5a09d fix column header keyboard visibility and ARIA labels 2026-02-19 19:46:58 +02:00
Your Name
4fa0f486f5 add skip navigation, page title, and global ARIA live region 2026-02-19 19:45:51 +02:00
Your Name
2044a7026d make toasts accessible: ARIA live region, dismiss button, pause on hover 2026-02-19 19:44:06 +02:00
Your Name
b1c5e9caa9 fix focus ring contrast across UI primitives 2026-02-19 19:43:00 +02:00
Your Name
7c4941ada4 fix contrast tokens, focus rings, and scrollbar visibility for WCAG AAA 2026-02-19 19:42:04 +02:00
Your Name
c921826f55 clean up unused files and update gitignore 2026-02-19 19:15:55 +02:00
Your Name
8492ffcfb7 fix card click delay when reduced motion is active
Skip layoutId and use instant transitions on the card detail modal
when reduced motion is on. The shared layout animation kept the z-50
overlay in the DOM during its exit spring, blocking all card clicks
until it settled.
2026-02-16 18:51:35 +02:00
Your Name
25f71544f0 fix layout animation blocking card clicks when reduce motion is on
Skip Framer Motion layout/layoutId props on cards when reduced motion
is active. These props cause pointerEvents:none during layout
transitions, making cards unclickable for ~1s after any layout shift.
2026-02-16 18:38:04 +02:00
Your Name
30263d6ac7 add reduce motion toggle and bump to v1.0.1
Add in-app reduce motion setting under Settings > Appearance so users
can disable animations without changing their OS preference. Applies a
.reduce-motion CSS class to kill all CSS transitions/animations and
wraps the app in MotionConfig to globally disable Framer Motion springs,
layout animations, and enter/exit transitions. Setting persists to disk.

Also removes leftover default Square*.png icons and bumps version to
1.0.1.
2026-02-16 17:51:23 +02:00
Your Name
59aaa688bb add README, CC0 license, and button icon alignment fix
- Comprehensive README with full feature docs, settings reference,
  keyboard shortcuts, data storage layout, and build instructions
- CC0 1.0 Universal public domain dedication
- Fix button icon/text vertical alignment (leading-none + svg translate)
- Lock Cargo dependencies
2026-02-16 15:40:28 +02:00
Your Name
414c1f7d68 feat: typography overhaul, custom scrollbars, import/export, settings UI
Includes changes from prior sessions: Epilogue + Space Mono fonts,
OverlayScrollbars integration, markdown editor fixes, settings dialog,
import/export buttons, and various UI refinements.
2026-02-16 14:56:36 +02:00
Your Name
8dedbf6032 docs: add 15-improvements design doc and implementation plan
Also tracks Cargo.lock and BoardCardOverlay component from prior sessions.
2026-02-16 14:56:22 +02:00
Your Name
2e2740427e feat: Phase 4 - board templates, auto-backup, version history
- BoardTemplate type and storage CRUD (save/list/delete templates)
- createBoardFromTemplate factory function
- "Save as Template" in board card context menu
- User templates shown in NewBoardDialog with delete option
- Auto-backup on save with 5-minute throttle, 10 backup retention
- VersionHistoryDialog with backup list and restore confirmation
- Version History accessible from board settings dropdown
2026-02-16 14:55:58 +02:00
Your Name
6340beb5d0 feat: Phase 3 - filter bar, keyboard navigation, notifications, comments
- FilterBar component with text search, label chips, due date and priority dropdowns
- "/" keyboard shortcut and toolbar button to toggle filter bar
- Keyboard card navigation with J/K/H/L keys, Enter to open, Escape to clear
- Focus ring on keyboard-selected cards with auto-scroll
- Desktop notifications for due/overdue cards via tauri-plugin-notification
- CommentsSection component with add/delete and relative timestamps
- Filtered card count display in column headers
2026-02-16 14:52:08 +02:00
Your Name
e535177914 feat: Phase 2 card interactions - priority picker, context menu, WIP limits, column collapse, checklist reorder
- PriorityPicker component with 5 colored chips in card detail modal
- Card context menu: Move to column, Set priority, Duplicate, Delete
- duplicateCard store action (clones card, inserts after original)
- Column WIP limits with amber/red indicators when at/over limit
- Column collapse/expand to 40px vertical strip
- Checklist item drag reordering with grip handle
- Comment store actions (addComment, deleteComment) for Phase 3
2026-02-16 14:46:20 +02:00
Your Name
8ca3b81e92 feat: Phase 1 quick wins - defaultColumnWidth, due date colors, card aging, open attachments 2026-02-16 14:33:48 +02:00
Your Name
02ef3acbfe feat: Phase 0 data model - add Comment, Priority, collapsed, wipLimit fields 2026-02-16 14:31:56 +02:00
Your Name
c6fea186ef feat: custom scrollbars, portable storage, window state persistence
- Custom scrollbar CSS using ::-webkit-scrollbar for Tauri's Chromium WebView
- Portable storage: all data written next to exe in data/ folder instead of AppData
- Rust get_portable_data_dir command with runtime FS scope for exe directory
- Window size/position/maximized saved to settings on close, restored on startup
2026-02-15 22:18:50 +02:00
Your Name
bc12b5569a feat: custom calendar date picker replacing native input
Build fully custom CalendarPopover with date-fns + Radix Popover.
Month/year dropdown selectors, today button, clear button, past
dates dimmed. Rewrite DueDatePicker to use it instead of <input type=date>.
2026-02-15 22:04:31 +02:00
Your Name
9365d16452 fix: replace onCloseRequested with beforeunload to fix window close
The Tauri onCloseRequested async handler was preventing the window
from actually closing. Using beforeunload for the save flush instead.
2026-02-15 21:46:44 +02:00
Your Name
21302bdfe9 feat: redesign card detail modal as 2-column dashboard grid
Replace 60/40 split layout with a 2x3 CSS grid where all sections
get equal weight. Cover color header, progress bar on checklist,
compact markdown editor, scroll containment on long lists.
2026-02-15 21:41:16 +02:00
Your Name
63b7de0e6f fix: window controls, dragging, and text selection
- Add Tauri permissions for window minimize/maximize/close/drag
- Rewrite WindowControls with plain buttons + stopPropagation
  to prevent drag region from capturing button clicks
- Add data-tauri-drag-region to TopBar child containers
- Make OpenPylon text pointer-events-none and select-none
2026-02-15 21:19:24 +02:00
Your Name
85c54a3768 feat: add micro-animations to TopBar, toasts, settings, and shortcut help 2026-02-15 21:01:10 +02:00
Your Name
24219bb212 feat: gesture-reactive drag overlay with tilt based on pointer velocity 2026-02-15 21:01:06 +02:00
Your Name
feccc4e17a feat: shared layout animation - card expands into detail modal 2026-02-15 21:00:29 +02:00
Your Name
1e14edda6c feat: add column stagger + card stagger + card hover/tap animations 2026-02-15 20:58:53 +02:00
Your Name
3a3c3bd2e1 feat: add stagger animations to board list and board cards 2026-02-15 20:58:03 +02:00
Your Name
1ecf04efcf feat: add AnimatePresence page transitions between views 2026-02-15 20:58:01 +02:00
Your Name
3d8bbc9ebb feat: custom window titlebar - remove native decorations, add WindowControls to TopBar 2026-02-15 20:56:55 +02:00
Your Name
6f5415c9f5 feat: lighten dark mode for HDR monitors - bump pylon + shadcn values 2026-02-15 20:56:35 +02:00
Your Name
275b663934 feat: add shared motion config with spring presets and variants 2026-02-15 20:56:29 +02:00
Your Name
46c0df3ab8 feat: add themed scrollbar styling for light and dark modes 2026-02-15 20:34:04 +02:00
Your Name
e4edc201b9 feat: upgrade empty states with welcome message and column placeholders 2026-02-15 20:33:16 +02:00
Your Name
fffa565423 feat: add board background patterns (dots, grid, gradient) with settings dropdown 2026-02-15 20:32:43 +02:00
Your Name
e5e9483a8e feat: add keyboard shortcut help modal triggered by ? key 2026-02-15 20:32:32 +02:00
Your Name
fde10d1a3c feat: add undo/redo buttons to TopBar with tooltips 2026-02-15 20:31:35 +02:00
Your Name
6341897487 feat: add toast notification system with success, error, and info variants 2026-02-15 20:30:17 +02:00
Your Name
61a5f11f25 feat: add card cover color with picker in card detail and bar in thumbnail 2026-02-15 20:29:29 +02:00
Your Name
0ef77bc470 feat: add column color picker submenu with 10 preset colors 2026-02-15 20:29:18 +02:00
Your Name
1556529307 feat: add column color, card coverColor, and board background to data model 2026-02-15 20:28:16 +02:00
Your Name
f303d61677 feat: apply board color to TopBar border and column header accents 2026-02-15 20:26:51 +02:00
Your Name
c2928afb11 feat: rewrite settings dialog with tabbed panel - appearance, boards, shortcuts, about 2026-02-15 20:25:58 +02:00
Your Name
a7c9c83bb0 feat: apply density factor to card, column, and board spacing 2026-02-15 20:25:34 +02:00
Your Name
aa91ef35c8 feat: add density CSS variable with default value 2026-02-15 20:24:19 +02:00
Your Name
c08efb5171 feat: wire app store with appearance actions and CSS variable application 2026-02-15 20:24:09 +02:00