feat(#15): Implement Gantt chart component #103

Merged
jason.woltje merged 3 commits from feature/15-gantt-chart into develop 2026-01-30 01:42:15 +00:00
Owner

Summary

Implements a full-featured Gantt chart component with milestones and dependency visualization.

Features

  • Task bar rendering with date-based positioning
  • Milestone support - Diamond markers for milestone tasks
  • Dependency arrows - SVG curved lines connecting dependent tasks
  • Keyboard navigation support
  • Responsive design

Test Coverage

File Lines Branches Functions
GanttChart.tsx 98.37% 91.07% 100%
types.ts 91.66% 88.88% 100%

45 tests passing

QA Checklist

  • Tasks render correctly with proper widths
  • Milestones show as diamonds
  • Dependency lines connect correctly
  • Drag/resize works
  • Keyboard navigation works

Closes #15

## Summary Implements a full-featured Gantt chart component with milestones and dependency visualization. ## Features - Task bar rendering with date-based positioning - **Milestone support** - Diamond markers for milestone tasks - **Dependency arrows** - SVG curved lines connecting dependent tasks - Keyboard navigation support - Responsive design ## Test Coverage | File | Lines | Branches | Functions | |------|-------|----------|-----------| | GanttChart.tsx | 98.37% | 91.07% | 100% | | types.ts | 91.66% | 88.88% | 100% | 45 tests passing ## QA Checklist - [ ] Tasks render correctly with proper widths - [ ] Milestones show as diamonds - [ ] Dependency lines connect correctly - [ ] Drag/resize works - [ ] Keyboard navigation works Closes #15
jason.woltje added 1 commit 2026-01-30 01:17:33 +00:00
- Add milestone support with diamond markers
- Implement dependency line rendering with SVG arrows
- Add isMilestone property to GanttTask type
- Create dependency calculation and visualization
- Add comprehensive tests for milestones and dependencies
- Add index module tests for exports
- Coverage: GanttChart 98.37%, types 91.66%, index 100%
jason.woltje added 1 commit 2026-01-30 01:32:28 +00:00
- Replace type assertions with type guards in types.ts (isDateString, isStringArray)
- Add useCallback for event handlers (handleTaskClick, handleKeyDown)
- Replace styled-jsx with CSS modules (gantt.module.css)
- Update tests to use CSS module class name patterns
jason.woltje added 1 commit 2026-01-30 01:41:26 +00:00
jason.woltje merged commit f1f4b0792c into develop 2026-01-30 01:42:15 +00:00
jason.woltje deleted branch feature/15-gantt-chart 2026-01-30 01:42:15 +00:00
Sign in to join this conversation.