Back to All Projects
2026

Helix Ticketing App

Portfolio project by Nanakumor Princewill

Production-inspired helpdesk with JWT auth, RBAC, soft deletes, Dockerized Postgres, and a layered Vitest/Playwright suite — built with Next.js 16 by Nanakumor Princewill.

Helix Ticketing App — project screenshot by Nanakumor Princewill

Built for

Support teams that need a clean ticket inbox, role-separated admin tools, audit-friendly history, and deployable local infrastructure — not a throwaway CRUD demo.

Problem

Many portfolio “ticket apps” stop at create/read/update. Real support work needs auth, roles, conversation threads, priorities, safe soft deletes, clear loading/empty states, and a database story that travels with the app (migrations + Docker).

Overview

Helix Ticketing App is a full-stack helpdesk I built to practice enterprise patterns end to end: JWT sessions, RBAC, ticket conversations, admin console, activity logging, soft deletes, Zod validation, flash toasts, closed-ticket UX, Sentry monitoring, Prisma migrations, and Docker Compose for Postgres 17. It is an original portfolio product by Nanakumor Princewill — not affiliated with other products named Helix.

Capabilities

  • User and admin experiences with separate permissions and ownership-aware ticket queues
  • Ticket creation, priorities, threaded comments, activity history, and close flows
  • Closed tickets visually muted (strikethrough / faded) with replies disabled
  • Admin console for users with soft-delete that reassigns tickets instead of erasing history
  • Flash toasts, confirm modals, loading spinners, and empty states across key flows
  • Docker Compose + Prisma migrations for a reproducible Postgres setup

Architecture notes

  • Next.js 16 App Router with Server Actions (no separate REST API) and Zod at every mutation edge
  • PostgreSQL 17 + Prisma 7 as the relational source of truth, with versioned SQL migrations
  • JWT httpOnly sessions (jose) + bcrypt hashing, login rate limits, and soft-delete-aware session checks
  • Sentry for runtime visibility; Vitest unit/integration + Playwright E2E with axe a11y
  • Optional Docker image + Compose stack for app + Postgres local/demo environments

Outcomes

  • A deployable support product shape — auth, RBAC, conversations, admin tooling, and polish UX in one stack
  • Clear separation between end-user ticket work and operator administration
  • Data-safety habits (soft deletes + activity logging + migrations) baked into the domain model
  • Documented layered tests and a public GitHub repo for walkthroughs and code review

Tech stack

  • Next.js 16
  • React 19
  • TypeScript
  • PostgreSQL
  • Prisma
  • Tailwind CSS v4
  • JWT (jose)
  • bcrypt
  • Zod
  • Sentry
  • Docker
  • Vitest
  • Playwright