An AI-powered event management platform built with Next.js, enabling organizers to create, manage, and optimize conferences with intelligent networking, interactive venue management, and real-time session coordination.
- Multi-Tenant Event Management — Dashboard with registrations, revenue tracking, and attendance trends
- Advanced Registration System — Multi-step registration with ticket selection, interest tagging, and sandbox payment
- Interactive Floor Plan Editor — Drag-and-drop SVG-based venue builder with element properties panel
- Session Management — Browse sessions by day/track with caapacity tracking and search
- Custom Badge Designer — Template-based badge creator with dynamic fields and PNG/PDF export
- AI Networking Engine — Interest-based attendee matching with compatibility scoring and conversation starters
- RAG-Powered Event Chatbot — Context-aware assistant trained on event data (schedule, speakers, venue, FAQ)
- Responsive design (mobile-first)
- Keyboard navigation support
- Clean, accessible UI with shadcn/ui components
| Layer | Technology |
|---|---|
| Framework | Next.js 16 (App Router, Turbopack) |
| Language | TypeScript |
| Styling | Tailwind CSS 4 + shadcn/ui (Radix UI) |
| State | Zustand |
| Auth | Clerk (@clerk/nextjs) |
| Database | Supabase (PostgreSQL) |
| ORM | Prisma |
| AI Chatbot | Google Gemini (@google/genai) + RAG-lite fallback |
| Badge Export | html2canvas-pro + jsPDF |
| QR Codes | qrcode |
| Floor Plan | react-dnd (drag-and-drop) |
| Charts | Recharts |
| Gesture Control | MediaPipe (@mediapipe/tasks-vision) |
| Voice Navigation | Web Speech API |
| Networking | Interest intersection + cosine similarity algorithm |
| PWA | Custom Service Worker + Web App Manifest |
src/
├── app/
│ ├── layout.tsx # Root layout (Clerk, PWA, fonts, metadata)
│ ├── page.tsx # Landing page (composed sections)
│ ├── globals.css
│ ├── (auth)/
│ │ ├── sign-in/[[...sign-in]]/page.tsx # Clerk Sign-In
│ │ └── sign-up/[[...sign-up]]/page.tsx # Clerk Sign-Up
│ ├── register/page.tsx # Multi-step registration + payment
│ ├── api/
│ │ └── chat/route.ts # Gemini AI chat endpoint
│ └── dashboard/
│ ├── layout.tsx # Sidebar nav, role switcher, gesture/voice
│ ├── page.tsx # Overview dashboard
│ ├── events/ # Event CRUD
│ ├── registrations/ # Attendee management
│ ├── sessions/page.tsx # Session browser + AI recs
│ ├── agenda/page.tsx # Personalized agenda builder
│ ├── floor-plan/page.tsx # Drag-and-drop venue editor
│ ├── networking/page.tsx # AI networking matches + graph
│ ├── badge-designer/page.tsx # Badge templates + export
│ ├── polls/page.tsx # Live polls & Q&A
│ ├── chat/page.tsx # AI assistant (RAG-lite + Gemini)
│ └── interactive/
│ ├── qa/page.tsx # Q&A moderation
│ └── notes/ # Session notes
│
├── components/
│ ├── ui/ # shadcn/ui primitives (tabs, badge, card, etc.)
│ ├── landing/ # Landing page sections
│ │ ├── navbar.tsx
│ │ ├── hero.tsx
│ │ ├── features.tsx
│ │ ├── speakers.tsx
│ │ ├── schedule.tsx
│ │ ├── tickets.tsx
│ │ ├── cta.tsx
│ │ └── footer.tsx
│ ├── network-graph.tsx # Canvas-based network visualization
│ ├── voice-navigation.tsx # Voice command UI
│ ├── pwa-provider.tsx # PWA service worker registration
│ └── gesture-control.tsx # MediaPipe gesture UI
│
├── hooks/
│ └── use-voice-navigation.ts # Speech recognition hook
│
├── lib/
│ ├── types.ts # All TypeScript interfaces
│ ├── data.ts # Sample event data, users, sessions, context
│ ├── store.ts # Zustand global state
│ ├── matcher.ts # Interest-based networking algorithm
│ ├── recommendations.ts # AI agenda/session recommendations
│ ├── rbac.ts # Role-based access control
│ ├── supabase-queries.ts # Supabase CRUD operations
│ ├── gesture-recognition.ts # MediaPipe hand gesture engine
│ ├── gesture-actions.ts # Gesture → navigation mapping
│ └── utils.ts # Utility functions (cn, etc.)
│
public/
├── manifest.json # PWA manifest
├── sw.js # Service worker (network-first + cache)
├── offline.html # Offline fallback page
├── icons/ # PWA icons (72–512px)
│
prisma/
├── schema.prisma # Database schema
│
scripts/
├── seed.ts # Faker-based DB seeder (150 users, 30 speakers, 5 events)
│
mockup/
The platform comes pre-loaded with Ai Event Manager sample data:
- 500 max attendees, 6 speakers, 11 sessions across 3 days
- 5 tracks: AI & ML, Cloud & DevOps, Security, Product & Design, Sustainability
- 4 ticket types with pricing
- 10 sample attendees with interests for networking demo
- Complete venue info for chatbot
Deploy to Vercel:
npx vercelBuilt for the Webathon competition.
MIT