Member Engagement & Insights
A member-feedback system that does more than collect responses. Departments can publish surveys, analyse results, assign follow-up actions and compare trends over time while only seeing the data they are allowed to see.
Open platform ↗
My part
- Designed and built the application, database and department access model.
- Built the public survey flow, admin workspace, analytics and action tracking.
- Added exports, audit records, rate limiting and production monitoring.
- Extended the same form engine to identified booking and event forms where anonymity is not appropriate.
How I built it
- Next.js App Router and React
- PostgreSQL with Prisma and Neon
- Auth.js sessions
- Separate anonymous public survey and authenticated admin flows
- Deterministic NPS, rating, trend and keyword analysis
Controls that mattered
- Server-side department scoping
- Turnstile and rate limits on public submissions
- Immutable published-question snapshots
- Audit logging for privileged actions and exports
- Formula-injection-safe Excel exports and PII-scrubbed logging
Where it landed
- Gave departments one place to create surveys and follow up on issues raised by members.
- Kept historical survey questions intact so results remain comparable.
- Made follow-up part of the product, so feedback can move from a response to an assigned action instead of dying in a report.
Stack
Next.jsTypeScriptPostgreSQLPrismaAuth.jsSentryPlaywright