Unifying Event Management: From Planning to Post-Event Analytics
Industry
SaaS - Event Management
Growth Stage
Pre-Seed





What we did
Branding, Mobile Apps, Web Apps
Client Background
The Client is a multi-tenant SaaS platform for professional event management, serving conference organisers, corporate summits, exhibitions, and community meet ups. It provides the complete toolset required to plan, execute, and analyse events — from early-stage scheduling and budgeting through live-day operations, attendee engagement, and post-event reporting.
The platform is built as a mono-repo containing three deployable applications: a REST API, an organiser-facing web app, and an admin dashboard.
It supports five distinct user types:
Organisation owners/admins create and manage the organisation, configure payments and integrations, and invite team members.
Event managers create events and manage budget, tasks, volunteers, vendors, and run-of-show.
Volunteers/staff are assigned to events with scoped permissions and execute tasks and run-of-show blocks on the day.
Attendees register for events, receive QR-coded tickets, participate in polls and Q&A, and rate sessions.
Super admin holds platform-level oversight across all organisations.
Challenges
Event organizers typically piece together a workflow from multiple disconnected tools — spreadsheets for budgets, email chains for vendor coordination, third-party ticketing, manual check-in, and ad-hoc communication.
This fragmentation creates four recurring problems:
Visibility gaps — no single source of truth for task status, budget burn, or attendee counts.
Coordination overhead — volunteers and staff have no centralised view of their day-of responsibilities.
Communication delays — reaching segmented attendee groups requires exporting lists and switching tools.
Audit risk — no traceable record of who changed what, and when.
The objective was to replace this patchwork with a single, organisation-scoped platform built for events run at scale, with tight coordination across distributed teams.
Implementation
Branding
Technical Architecture
The platform runs on a modern, fully containerised stack. The API is built with Node.js, Express, and TypeScript, backed by Prisma ORM over PostgreSQL. Both the organiser UI and admin UI are built in Next.js (App Router). Supporting services include AWS S3 (or S3-compatible) for file storage, AWS SES for email, Twilio for SMS, Cashfree Payments for payment processing, and Firebase Cloud Messaging with AWS SNS for push notifications. API documentation is auto-generated via Swagger (OpenAPI), and the entire system is containerised with Docker / Docker Compose.
Deployment Topology
Browser clients (Organiser app and Admin dashboard) communicate with the Express API over HTTP using Bearer JWT tokens. The API connects to PostgreSQL for persistence and integrates with AWS S3 (files), AWS SES (email), Twilio (SMS), Cashfree (payments), and Firebase/SNS (push).
Core Feature(s) Modules
Multi-Tenant Organisation Model — Every resource (events, members, roles, vendors, inventory) is scoped to an organisation. Users can belong to multiple orgs and switch context. Supports RBAC with system and custom roles, permission keys, and wildcard matching (e.g., events:manage implies create/update/delete). Invite-based membership moves users INVITED → ACTIVE. Every create/update/delete on key entities is persisted to an audit log with before/after snapshots.

Event Lifecycle Management — Events move through defined statuses DRAFT → PUBLISHED → COMPLETED / CANCELLED, each carrying multi-day date ranges, physical or virtual location, rooms and sessions with speaker assignments, total and per-category budgets linked to vendors, custom registration fields, and ticket types.

Ticketing and Bookings — Organizers define TicketTypes with capacity controls, sales windows, pricing, and optional approval. Purchases generate a Booking record with per-attendee QR codes; check-in works via OTP or QR scan.

Cashfree Payment Integration — Organizations connect their own Cashfree credentials (App ID + Secret Key, sandbox or production). The platform initiates payment orders at booking, validates webhook signatures, records all transactions in PaymentTransaction, and stores raw payloads in WebhookLog. Each organization is fully isolated at the payment-account level.
Run-of-Show (D-Day Operations) — The operational heart during live events. Phases (Pre-Day / D-Day / Post-Day) contain ordered Blocks with start/end times, priority, status, category, and assigned volunteers. Tasks attach to phases or blocks; alerts broadcast to the team; stations map coverage areas to volunteers. Real-time status tracking (SCHEDULED → LIVE → COMPLETED / EXTENDED) gives coordinators a live execution view.
Attendee Engagement — During sessions, attendees submit and upvote/downvote Q&A questions (organizers can promote them to the session queue), respond to live or pre-set polls, and rate sessions and the overall event — feeding post-event analytics.
Communications — A built-in module reaches attendees without leaving the platform: reusable email/SMS templates, dynamic segments (by ticket type, check-in status, registration status), campaigns sent immediately or scheduled, and per-recipient delivery tracking with open timestamps and campaign-level metrics.
Vendor and Inventory Management — An org-level supplier directory with contacts and categories. Inventory items track SKU, quantity, unit cost, acquisition type (RENTAL / PURCHASE), and low-stock thresholds. Usage logs record consumption per event; vendors link to both budget items and event stations for spend-to-execution traceability.
Approval Workflows — Any entity (budget item, vendor contract, custom request) can be submitted for approval with priority (LOW → URGENT), line items, amounts, and attachments. Approvers accept or reject with a recorded decision timestamp.
Incident / Risk Management — Organizers log incidents with type classification (TECHNICAL, MEDICAL, SECURITY, VENDOR, CROWD, OTHER), priority, and resolution notes — fully searchable and filterable for post-event review.
Push Notifications — Attendees receive push (FCM/APNs via AWS SNS) for booking confirmation, reminders, check-in events, and announcements. Device tokens are persisted per attendee; inactive tokens are deregistered automatically.
Data Model & Access Control
The Prisma + PostgreSQL schema spans ~45 models with deliberate design decisions: UUID primary keys throughout for distributed safety, careful cascade deletes (deleting an event removes all child entities; deleting an org removes all events and members), SetNull on soft dependencies (deleting a user nullifies assignedTo/reportedBy rather than cascading), enum columns stored as VarChar for migration-free flexibility, composite unique constraints for multi-tenant integrity (e.g., [userId, organizationId], [organizationId, sku]), and a JSON-based audit log capturing before/after values.
Authentication is JWT-based (Bearer token in the Authorization header). The authenticate middleware resolves user identity, active organization context, and the super-admin flag. Route-level guards include authorize(...roles) for role allowlists, checkPermission("resource:action") for permission keys with wildcard support, and checkEventAccess() for org members or assigned event volunteers.
The Outcome
The outcome is a seamless and intelligent trading experience through a user-centric mobile app. Users gain real-time access to market data, personalized watchlists, and performance insights.
The platform enhances trading confidence, simplifies decision-making, and empowers users to efficiently manage investments anytime, anywhere, with speed, accuracy, and ease.
You're one step away from transforming your business growth trajectory





