- Implemented `CapacityCell`, `CapacityDetailPopover`, and `CapacityGrid` components for displaying user workload and capacity.
- Created `UtilizationHeatmap` component to visualize team member utilization over weeks.
- Added hooks for managing skills (`useSkills`, `useCreateSkill`, `useDeleteSkill`, `useUserSkills`, `useSetUserSkill`, `useRemoveUserSkill`, `useStageSuggestions`) and workload (`useWorkload`, `useUpdateCapacity`).
- Developed services for skill management (`skill-service.ts`) and workload management (`workload-service.ts`) to interact with the database.
- Introduced logic for calculating user workload, including active assignments and capacity overload detection.
- Enhanced UI with tooltips and badges for better user experience.
- Updated CommandItem component to use rounded-lg for better aesthetics.
- Modified DialogOverlay and DialogContent to improve backdrop and border radius.
- Changed DropdownMenuItem, DropdownMenuCheckboxItem, and DropdownMenuRadioItem to use rounded-md for consistency.
- Enhanced SelectItem with rounded-md for a more modern look.
- Updated SheetOverlay to improve backdrop styling.
- Adjusted Toaster component border radius for a more refined appearance.
- Enhanced Table component with rounded-xl and shadow for better visual hierarchy.
- Added assignment display feature in DeliverableTable and KanbanBoard components, showing assigned users with badges.
- Updated deliverable service to include assignments in the data fetching process.
- Created a new seed script for tracker data to facilitate testing and development.
- Implement PPTXSchemaValidator for validating PowerPoint presentation XML files against XSD schemas.
- Create RedliningValidator to check tracked changes in Word documents, ensuring proper author tracking.
- Introduce recalc.py script to recalculate Excel formulas using LibreOffice, including error handling for Excel-specific errors.
- Add UI components for collapsible sections and tabs using Radix UI.
- Implement stage validation schema using Zod for managing project stages.
Dynamic imports for heavy components (Kanban, Gantt, CommandPalette),
skip-to-content link, ARIA landmarks/labels on sidebar, breadcrumbs,
topbar notifications, kanban board, gantt timeline, and pipeline
progress. Focus-visible ring styles for keyboard navigation.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Export: multi-sheet styled workbook (Overview + Pipeline detail)
with color-coded status cells via ExcelJS.
Import: upload Excel with preview/validation step, then commit.
Supports Name, Priority, Due Date, Notes columns with flexible
column name matching. Import dialog on project detail page.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Service with auto-notification helpers for assignments, status changes,
revisions, and comments. Topbar bell shows real unread count with
popover dropdown. Full notifications page with mark-read actions.
Polls unread count every 30 seconds.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Services, API routes, hooks, and UI components for:
- Revision rounds with submit/review/approve/request-changes flow
- Threaded comments with replies on each stage
- Stage detail sheet accessible from deliverable detail page
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Gantt-style timeline at /projects/[projectId]/timeline
- Custom implementation (no external Gantt lib — React 19 compatible)
- Deliverables as rows, stages as colored bars
- Week-scale headers, auto-computed date range
- Today line indicator, status-colored bars with tooltips
- Read-only V1 per implementation plan
Completes Phase 2: all three views (Table, Board, Timeline) plus
assignments, pipeline visualizer, and project detail page.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Kanban board at /projects/[projectId]/board
- 5 columns: Not Started, In Progress, In Review, Approved, On Hold
- Drag-and-drop via @hello-pangea/dnd with status update on drop
- Cards show name, priority badge, pipeline progress
- Left border accent color by deliverable status
- Error toast on failed moves with auto-revert
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Full spreadsheet view at /projects/[projectId]/table
- Columns: name, status, priority, pipeline progress, due date
- Sortable columns with custom priority sort order
- Global search filter and status dropdown filter
- Compact 40px rows, sticky header, muted alternating rows
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Project detail page at /projects/[projectId] with deliverables list
- PipelineProgress component: 10-segment status bar with tooltips
- DeliverableFormDialog for creating deliverables
- View switcher tabs (Table/Board/Timeline) linking to sub-routes
- TanStack Query hooks for deliverables and stage status updates
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Assignment service: assign/unassign users to stages, get user's work
- API routes: POST/DELETE /api/stages/:id/assignments, GET /api/my-work
- My Work page with assignments grouped by project
- StageStatusBadge component with semantic status colors
- Zod validator for assignment input
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Zod validation schemas for create/update project
- Service layer with listProjects, getProject, createProject,
updateProject, deleteProject
- API routes: GET/POST /api/projects, GET/PATCH/DELETE /api/projects/:id
- TanStack Query hooks for all project operations
- Project list page with card grid, status/priority badges
- Project create dialog with form validation
- QueryProvider + API utility helpers
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Collapsible sidebar (256px / 64px) with nav items and tooltips
- Topbar with breadcrumbs and notification bell placeholder
- Theme toggle (light/dark/system) via dropdown
- Zustand store for sidebar collapsed state
- Placeholder pages for all main routes (dashboard, projects,
my-work, notifications, settings)
- Authenticated (app) layout group wrapping all protected routes
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Install 18 core UI primitives (button, card, dialog, table,
command, etc.) with New York style. Wire TooltipProvider in
root layout.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- App Router with src/ directory structure
- Design system CSS variables (Oliver/Brandtech palette, light + dark mode)
- Montserrat + Inter + JetBrains Mono font configuration
- next-themes provider for theme toggle
- Full folder structure per implementation plan
- nvm configured for Node 22
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>