← Back to Portfolio
EP

Event Planner

Professional event management and signup tracking platform

Live JavaScript Node.js PlanetScale Enterprise-Ready

Project Overview

Event Planner is a professional-grade event management platform designed for event coordinators, corporate trainers, community organizers, and educational institutions. The application provides end-to-end event lifecycle management from creation and promotion to participant registration, waiver collection, and post-event analytics.

Built on scalable serverless architecture with enterprise-grade security, Event Planner handles events ranging from small meetups to large-scale conferences. The platform emphasizes professional workflows, detailed reporting capabilities, and seamless integration with existing organizational systems through a comprehensive REST API.

The system architecture prioritizes reliability, performance, and extensibility, making it suitable for organizations that require robust event management capabilities with the flexibility to scale as their needs grow.

Live URL: https://eplanner.kervinapps.com

Status: Production (v3.0.0)

License: MIT

Target Users: Professional Event Planners, Corporate Teams, Educational Institutions

Core Features

1. Professional Event Creation

Create sophisticated events with comprehensive details including venue information, scheduling, capacity management, custom descriptions, and branding options. The system supports both one-time and recurring events with flexible configuration options.

2. Smart Registration System

Intelligent signup system with real-time availability checking, automated capacity management, duplicate prevention, and instant confirmation. Supports multiple registration types including individual, group, and corporate registrations.

3. Digital Waiver & Consent Management

Enterprise-grade waiver system with customizable legal agreements, digital signature capture, timestamp verification, IP logging, and secure storage. Maintains complete audit trails for compliance and liability protection.

4. Comprehensive Admin Dashboard

Full-featured administrative interface for managing all aspects of events. Includes participant management, real-time analytics, reporting tools, and data export capabilities.

5. Location & Mapping Integration

Powered by Mapbox GL JS, the platform provides interactive maps with precise location selection, venue visualization, directions, and proximity information to help attendees find event locations easily.

6. Analytics & Reporting

Detailed analytics dashboard tracking registration trends, attendance patterns, demographic insights, and engagement metrics. Generate comprehensive reports for stakeholders, funders, and management.

7. Communication Tools

Built-in communication system for sending updates, reminders, and announcements to registered participants. Supports email and SMS integration.

8. RESTful API

Comprehensive REST API enables integration with existing systems, custom reporting tools, mobile applications, and third-party services. Well-documented with OpenAPI specification.

Technical Architecture

Technology Stack

Frontend

  • • JavaScript (ES6+)
  • • HTML5 & CSS3
  • • Responsive Design (Mobile-First)
  • • Mapbox GL JS v2.15
  • • Canvas API for signatures

Backend

  • • Node.js 14+
  • • Express.js 4.18
  • • Serverless Functions
  • • RESTful API Architecture
  • • CORS enabled

Database

  • • PlanetScale (Serverless MySQL)
  • • JSON file storage
  • • Real-time data sync
  • • Automatic backups

Infrastructure

  • • Netlify Hosting & CDN
  • • Netlify Functions (AWS Lambda)
  • • Continuous Deployment
  • • Environment-based configs

System Architecture

Event Planner follows a modern serverless microservices architecture:

Design Patterns

API Documentation

Comprehensive REST API for programmatic access:

POST /api/runs/create

Create a new event

{
  "title": "Annual Tech Conference",
  "location": "Convention Center, NYC",
  "datetime": "2025-12-15T09:00:00Z",
  "maxParticipants": 500,
  "description": "Full-day tech conference",
  "category": "conference",
  "tags": ["technology", "networking"]
}
GET /api/runs

Get all events (supports filtering, pagination, sorting)

Query params: ?category=conference&limit=10&offset=0&sort=datetime

GET /api/runs/:eventId

Get detailed information for a specific event

POST /api/runs/:eventId/signup

Register an attendee for an event

{
  "name": "Jane Smith",
  "email": "jane@example.com",
  "phone": "+1234567890",
  "organization": "Tech Corp",
  "waiver": "base64_signature_data"
}
GET /api/runs/:eventId/signups

Get all registrations for an event (admin only)

PUT /api/runs/:eventId

Update event details

PUT /api/runs/:eventId/complete

Mark event as completed

DELETE /api/runs/:eventId

Delete an event and associated data

GET /api/health

Health check endpoint for monitoring

Database Schema

events table

CREATE TABLE events (
  id VARCHAR(255) PRIMARY KEY,
  title VARCHAR(500),
  location TEXT,
  datetime DATETIME,
  max_participants INT,
  description TEXT,
  category VARCHAR(100),
  tags JSON,
  status ENUM('draft', 'published', 'completed', 'cancelled'),
  created_by VARCHAR(255),
  created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
);

registrations table

CREATE TABLE registrations (
  id INT AUTO_INCREMENT PRIMARY KEY,
  event_id VARCHAR(255),
  name VARCHAR(255),
  email VARCHAR(255),
  phone VARCHAR(50),
  organization VARCHAR(255),
  waiver_signed BOOLEAN,
  waiver_timestamp TIMESTAMP,
  check_in_status BOOLEAN DEFAULT FALSE,
  check_in_timestamp TIMESTAMP,
  created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  FOREIGN KEY (event_id) REFERENCES events(id) ON DELETE CASCADE,
  INDEX idx_event_id (event_id),
  INDEX idx_email (email)
);

telemetry table

CREATE TABLE telemetry (
  id INT AUTO_INCREMENT PRIMARY KEY,
  session_id VARCHAR(255),
  event_id VARCHAR(255),
  action VARCHAR(100),
  device_info JSON,
  browser_info JSON,
  ip_address VARCHAR(50),
  geolocation JSON,
  timestamp TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  INDEX idx_session_id (session_id),
  INDEX idx_event_id (event_id)
);

Security & Compliance

Performance & Scalability

Page Load Time

< 1.2s

API Response Time

< 150ms

Database Query Time

< 30ms

Uptime SLA

99.95%

Scalability Features

Integration Capabilities

Event Planner is designed for extensibility:

Use Cases & Success Stories

Corporate Training Events

HR departments manage employee training sessions, track attendance, and maintain compliance records with digital waivers and certifications.

Educational Workshops

Universities and training centers coordinate guest lectures, seminars, and student activities with automated registration and capacity management.

Community Events

Non-profit organizations run community programs, volunteer activities, and member meetups with comprehensive attendee tracking.

Professional Conferences

Event planners manage multi-day conferences with hundreds of attendees, multiple sessions, and detailed analytics for sponsors.

Deployment & Operations

Continuous Deployment

Automated CI/CD pipeline deploys changes automatically after passing tests:

Monitoring & Observability

Future Roadmap

Links & Resources