Skip to main content

Case Study

Updated: 2026-05-09

DEMS — Dinkenesh Event Management System

A full-stack, enterprise-grade event management platform powering event discovery, organizer workflows, multi-tiered ticketing, QR-code check-in with duplicate-scan prevention, automated payment verification, interactive Leaflet maps, and comprehensive moderation with ban and appeal processing built with React 19, Express 5, Prisma 7, PostgreSQL, and Redis.

Scope: full stackFull-Stack Engineer & Database DesignerDuration: 3 monthsYear: 2026Architecture: distributed-system

Key Engineering Facts & Architecture Specs

Structural Invariants

api routes

Fact

16 Controller Domain Suites

database tables

Fact

14 Prisma Models

checkin mechanism

Fact

QR Code + Atomic Duplicate Guard

email templates

Fact

HTML Transactional Templates

roles

Fact

Admin, Organizer, Staff, Attendee

Architecture View

Processing state: architecture signal graph is initializing...

Architectural Decision Log

Trade-Off Analysis

Atomic transaction check-in with duplicate-scan prevention

Using Prisma database transactions with unique constraints and optimistic lock guards ensures that multiple gate scanners cannot validate the same ticket twice during peak gate ingress.

Trade-off: Requires gate staff scanning devices to maintain active internet connectivity for real-time validation.

Role-based access control with granular middleware (RBAC)

Separating permissions across Admin, Organizer, Staff, and Attendee ensures staff can only validate tickets, organizers manage events, and admins control platform payouts and bans.

Trade-off: Increases JWT payload and requires token verification on all protected API routes.

Prisma ORM with PostgreSQL for structured relational modeling

Clear schema relations across users, events, ticket types, orders, check-ins, reviews, moderation reports, and appeals ensure data consistency and simplified migrations.

Trade-off: Complex analytical reporting requires raw SQL aggregations or dedicated summary tables.

Architecture Narrative

Challenge

Managing high-throughput live events requires coordinating real-time ticket sales, fraud prevention, fast QR-code gate check-in without duplicate entry, and rigorous administrative moderation for community safety.

Solution

Built DEMS using a decoupled React 19 + Vite frontend and Express 5 backend with Prisma ORM and PostgreSQL. Designed atomic transaction check-in flows preventing duplicate ticket scanning, integrated Leaflet for geolocation mapping, built an interactive QR camera scanner using jsqr, implemented automated email confirmations with Nodemailer, and established moderation pipelines supporting user bans and appeal workflows.

Result

Delivered a complete end-to-end event platform with 16 controller suites, robust RBAC, automated analytics with CSV exports, and sub-200ms QR verification.

Trade-off Matrix

DimensionSelected OptionImpactCompromise
Check-in ValidationServer-Authoritative Atomic Prisma TransactionsEliminates duplicate ticket entry and gate fraudRequires reliable internet connectivity at gate scanners
Data LayerPrisma ORM with PostgreSQLType-safe database queries and automated schema migrationsSlight overhead compared to raw SQL queries
MappingOpen-source Leaflet + OpenStreetMapZero API cost and zero vendor lock-in for geolocation displayRequires custom client-side coordinate clustering

Failure Modes & Resilience Analysis

Degradation Protocol

Failure Path & Recovery Invariants

If payment gateway verification experiences network timeouts, webhook reconciliation endpoints safely re-verify transaction status before ticket issuance to avoid double-charging.

What I'd Do Differently & Evolution

+

Implement an offline-first signed QR token verification protocol with local cryptographic public-key validation for network-denied event venues.

+

Introduce Redis-based BullMQ background workers for asynchronous high-volume ticket PDF rendering.

Source Repositories & Access Endpoints

Verified Codebases

Estifanos Kebede

System Engineer & Full Stack Developer

Social

SYSTEM: ESTIFANOS.PORTFOLIO

STATUS: OPERATIONAL

LAST_UPDATED: 2026

© 2026 Estifanos Kebede. Built with precision and intent.