EMMANUEL_ARO_/>← Back to work

// CASE STUDY

Nativetalk Support Operations Dashboard

Architected a centralized ticket-management dashboard for the Nativetalk enterprise support stack — tracking customer inquiries, managing agent assignment, and surfacing real-time completion-rate metrics in a single operator view. Built around strict typed API contracts and role-based access control (RBAC).

Role
Design + Build (solo)
Year
2026
Context
Tech4mation · Nativetalk
Status
In production
Next.jsTypeScriptREST APIsVercel
01.

Overview

Nativetalk Ticketing is the support-operations dashboard for the Nativetalk stack. It gives a support operator one surface to triage customer inquiries, assign agents, and track how fast tickets actually close.

02.

The problem

Support requests arrived across scattered channels with no single queue. Operators context-switched between tools to find, claim, and resolve tickets — and managers had no reliable signal for how the team was performing.

There was no honest completion-rate number. "How are we doing?" could only be answered by manually counting, which meant it rarely got answered at all.

03.

My approach

I designed it as a single operator surface backed by a typed API contract. Every ticket, agent, and status transition is a typed entity end-to-end — the dashboard and the backend share one schema, so a malformed payload fails at the boundary instead of corrupting a view.

Role-based access separates admin operators from agents: capabilities are gated on the server and mirrored in the UI, so the interface never offers an action the caller can't actually perform.

04.

Architecture decisions

Typed contract first — I modelled the ticket lifecycle as explicit states before writing a single view, so the UI could only ever render a state the system actually supports.

Server-derived metrics — completion rate and throughput are computed server-side and surfaced in one overview panel. Managers get a single number they can trust, not a spreadsheet.

Stateless views — each screen derives from server state with no competing client-side source of truth, which removes a whole class of drift bugs.

05.

Outcome

Operators now triage from one queue instead of several tools. Assignment is a single action. Completion-rate metrics are visible in the same view as the work, with no separate report to run.

The dashboard is in production on the Nativetalk stack and is the surface support runs on day to day.

View live View code ← All projects