Commit graph

  • b31dd58e9f style: recolor login page accents from indigo to #FFC407 main DJP 2026-05-18 19:08:50 -04:00
  • d4c6576a95 parity v3: two-bar charts, airtable link fallbacks, filter split, weekly comparison, project-type detail DJP 2026-05-18 08:50:21 -04:00
  • 9f3d3cabfd feat: rebuild Department / Forecast / Project Type pages to match original SPA DJP 2026-05-17 23:17:42 -04:00
  • 6320fb389c style: dark slate theme matching the original SPA's look DJP 2026-05-17 22:28:41 -04:00
  • dfbc57b22f fix: lift uploads into always-visible header tray; preserve state across navigation DJP 2026-05-17 21:59:36 -04:00
  • 6e7338de99 fix: stop flooding Upload banner with every Zoho column we don't use DJP 2026-05-17 21:52:04 -04:00
  • 5efb5897db frontend: upgrade ESLint 8 → 9 + typescript-eslint 7 → 8 (flat config) DJP 2026-05-17 21:46:09 -04:00
  • 993e370cea feat: Forecast, Project Type Summary, Time Log Detail, AI Chat, filters v2, stats bar, RBAC DJP 2026-05-17 21:40:03 -04:00
  • cd1c99d5e0 feat: KPI tiles, active/soft booking split, hour-breakdown drill-down, period toggle, forecast line, sync button DJP 2026-05-17 21:06:23 -04:00
  • 9e9daa3ec0 frontend: defensive coercion in Bookings table DJP 2026-05-17 20:56:35 -04:00
  • e1db93ad4a backend + frontend: leave hours, server-side bookings filter, dynamic meta, defensive charts DJP 2026-05-17 20:48:12 -04:00
  • d9860d7beb backend: raise multipart upload cap from 20 MB to 100 MB DJP 2026-05-17 20:39:45 -04:00
  • c485757dc3 frontend: cap Project Load chart to top 10 projects, drop legend, honour filters DJP 2026-05-16 13:57:11 -04:00
  • a1a7729a0e frontend: contain chart crashes with ErrorBoundary + null-safe Project Load aggregate DJP 2026-05-16 13:52:56 -04:00
  • 8e28464bdf deploy.sh: fix self-collision in slug check when clone path != slug DJP 2026-05-16 13:47:03 -04:00
  • ac9743c696 backend: flatten Airtable lookup fields at the boundary DJP 2026-05-16 13:20:50 -04:00
  • bdfaa5b27f deploy.sh: print Include line using actual repo path, not hardcoded /opt/<slug> DJP 2026-05-16 13:04:11 -04:00
  • 287f0b1b01 deploy.sh: pull first, fail fast, re-exec if deploy.sh itself changed DJP 2026-05-16 12:57:18 -04:00
  • 4bf53124a8 deploy.sh: detect slug/port collisions against the live vhost DJP 2026-05-16 12:55:19 -04:00
  • 04edbfdd2c Initial commit: dockerised FastAPI backend + React/Vite frontend rewrite DJP 2026-05-16 12:35:07 -04:00
  • c9f9c5cced Initial commit Dave Porter 2026-05-16 16:32:31 +00:00