07open source
Epoch
Event-tech backend. NestJS 11 + Next.js 16 + Prisma + PostgreSQL. Better-Auth, real-time ticket flows, role-based access.
Open the repo
07open source
Event-tech backend. NestJS 11 + Next.js 16 + Prisma + PostgreSQL. Better-Auth, real-time ticket flows, role-based access.
Open the repo
Epoch is an event-tech platform: organisers create events, sell tickets, manage check-ins, and run post-event reports. The frontend is Next.js 16 with the app router; the backend is NestJS 11 with Prisma talking to PostgreSQL. Auth is Better-Auth (the open-source replacement for NextAuth / Clerk-style flows that runs in your own infrastructure).
The interesting design choice was the ticket
lifecycle as a state machine: reserved → paid → issued → checked-in → redeemed (or any of the
back-transitions on cancel / refund). The state
machine is enforced in a single NestJS module
and the rest of the app talks to it, so
double-booking a seat or issuing a ticket that
was never paid for is impossible by construction.
The check-in flow is offline-first: the door staff’s device queues scans locally and reconciles on reconnect, so a flaky venue Wi-Fi network does not block the line.