Commit graph

15 commits

Author SHA1 Message Date
Leivur Djurhuus
edcf31672e feat: enhance UI components and add assignment feature to deliverables
- 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.
2026-03-02 13:46:55 -06:00
Leivur Djurhuus
a47c6791d9 feat: add validators for PowerPoint and Word documents, and Excel recalculation script
- 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.
2026-03-02 12:23:09 -06:00
Leivur R. Djurhuus
6422428333 Add dev bypass for authentication checks in middleware and session retrieval 2026-02-28 22:23:14 -06:00
Leivur R. Djurhuus
f99ddde503 Add deadline tracking with approaching/overdue detection
Deadline service checks deliverables and stages for approaching
(within 3 days) and overdue deadlines. API endpoint for fetching
deadlines and optionally generating notifications for producers.
Visual overdue indicators (red text + warning icon) on stage cards.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-28 21:47:42 -06:00
Leivur R. Djurhuus
3b8bb1d5d6 Add Excel import and export for deliverables
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>
2026-02-28 21:46:23 -06:00
Leivur R. Djurhuus
4b6576233e Add dashboard with KPI cards, charts, and overdue alerts
Dashboard service aggregates project/deliverable/stage stats.
KPI cards for active projects, deliverables, overdue count, and
pipeline completion rate. Recharts pie chart for status distribution,
stacked bar chart for stage completion by template type.
Overdue deliverables table and recent completions feed.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-28 21:43:55 -06:00
Leivur R. Djurhuus
4f841c73b7 Add notification system with topbar dropdown and full page
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>
2026-02-28 21:41:56 -06:00
Leivur R. Djurhuus
2128e79c1a Add revision tracking and threaded comments for pipeline stages
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>
2026-02-28 21:40:12 -06:00
Leivur R. Djurhuus
740957d443 Add artist assignment system and My Work page
- 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>
2026-02-28 21:27:21 -06:00
Leivur R. Djurhuus
1b8392b962 Add user management: API routes, service layer, role-based access
- User service: listUsers, updateUserRole, getUserById
- API routes: GET /api/users, PATCH /api/users/:id
- Role-based access control (only ADMIN/PRODUCER can change roles)
- Completes Phase 1 of the implementation plan

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-28 21:15:46 -06:00
Leivur R. Djurhuus
9f97cfe218 Add Deliverable CRUD with pipeline dependency engine
- Deliverable service auto-creates 10 pipeline stages on creation
- Stages start as BLOCKED/NOT_STARTED based on dependency rules
- Dependency engine: canStageStart() validates all prerequisites
- Stage machine: enforces valid status transitions
- Critical gate approval auto-unblocks downstream stages
- API routes for deliverables (nested under projects) and stages
- Zod validators for deliverable create/update

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-28 21:14:32 -06:00
Leivur R. Djurhuus
2859a50761 Add Project CRUD: API routes, service layer, form, and list page
- 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>
2026-02-28 21:11:46 -06:00
Leivur R. Djurhuus
b4ae910cf5 Add Auth.js v5 with Google + Microsoft Entra ID SSO
- NextAuth config with PrismaAdapter, database sessions
- Session callback enriches with role + organizationId
- Login page with Google and Microsoft sign-in buttons
- Cookie-based middleware for auth protection (Edge-compatible)
- Type augmentation for session user fields

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-28 21:07:38 -06:00
Leivur R. Djurhuus
c13dc9cacc Add Prisma 7 schema with full data model and seed script
- 12 models: Organization, User, Account, Session, Project,
  Deliverable, DeliverableStage, StageAssignment, Revision,
  Comment, Notification, plus pipeline templates/dependencies
- Prisma 7 adapter pattern with @prisma/adapter-pg
- Seed script with 10 pipeline stages and dependency rules
- Environment config (.env.example)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-28 21:06:17 -06:00
Leivur R. Djurhuus
856faa896e Initial scaffold: Next.js 16, TypeScript, Tailwind CSS 4, ESLint, Prettier
- 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>
2026-02-28 20:58:48 -06:00