liam@portfolio:~ cat case-study.md
$ stack
01 // problem
Support requests were scattered across email threads and ad-hoc spreadsheets. There was no single place to see open issues, assign ownership, or close the loop with clients. Agents duplicated context in replies because prior threads were hard to find. Clients had no shared view of status, so "any update?" messages piled up and slowed resolution.
02 // solution
Built a fullstack helpdesk with ticket creation, status tracking, and role-based views. Agents get a clear queue; clients get visibility without drowning in tooling. Deployed as a fast, prerender-friendly app backed by Supabase for auth and data. Supabase Realtime keeps ticket state in sync across tabs without polling. Status transitions are explicit so handoffs between agents stay auditable. The app stays prerender-friendly where possible so first paint stays fast on modest connections.
$ screenshots
Dashboard home with shortcuts to tickets, notifications, and new requests Sortable ticket queue with filters and row actions Ticket detail with comments, notes, and status controls In-app notifications for assignments, replies, and status changes Keyboard shortcuts overlay for power-user navigation