Built with Next.js, React, TypeScript, MongoDB & NextAuth.js
PulseMeet is a modern full-stack Event Registration & Management Platform inspired by event platforms such as Luma.
The application enables hosts to create and manage public events while allowing attendees to discover, register, and track their participation through secure dashboards.
This project demonstrates full-stack development skills including authentication, database integration, secure registration workflows, role-based access control, attendee management, and CSV export functionality.
https://pulse-meet-nine.vercel.app
- Secure Host Registration & Login
- Create Public Events
- Edit Existing Events
- Delete Events
- Manage Event Registrations
- View Attendee Information
- Search Attendees
- Export Attendee Lists as CSV
- Capacity Management
- Registration Deadline Controls
- Secure Registration & Login
- Register for Public Events
- View Registered Events
- Track Event Participation
- Access Event Details
- Public Event Pages
- Shareable Event URLs
- Event Information Display
- Registration Status Visibility
- Live Attendee Counts
- Password Hashing with bcryptjs
- JWT Session Authentication
- Protected Host Dashboards
- Role-Based Access Control
- Event Ownership Verification
- Duplicate Registration Prevention
- Passwords Never Exposed in APIs
- Passwords Never Exported in CSV Reports
- Duplicate Registration Prevention
- Capacity Limit Enforcement
- Registration Cutoff Date & Time
- Public Attendee Count Display
- Event Editing
- Event Deletion
- Attendee Search & Filtering
- CSV Export Functionality
- Responsive Mobile-First UI
- Modern Animated User Interface
- Next.js (App Router)
- React 19
- TypeScript
- Tailwind CSS v4
- Framer Motion
- Lucide React
- Next.js Route Handlers
- NextAuth.js
- bcryptjs
- MongoDB Atlas
- Mongoose ODM
- Vercel
- MongoDB Atlas
PulseMeet follows a modern full-stack architecture consisting of four layers:
- React Components
- Next.js App Router
- Tailwind CSS
- Framer Motion
- Route Handlers
- Business Logic
- Validation
- Authorization
- NextAuth.js
- JWT Sessions
- Password Verification
- MongoDB Atlas
- Mongoose Models
src/
โโโ app/
โ โโโ (auth)/
โ โโโ api/
โ โโโ attendee/
โ โโโ dashboard/
โ โโโ events/
โ
โโโ components/
โโโ lib/
โโโ models/
โโโ types/
โโโ docs/
Stores:
- Name
- Password (Hashed)
- Role (HOST / ATTENDEE)
Stores:
- Title
- Description
- Date
- Time
- Location
- Host Information
- Capacity
- Registration Cutoff
- Event Status
Stores:
- Event Reference
- Attendee Reference
A compound unique constraint prevents duplicate registrations.
- User Registration
- User Login
- Session Management
- Create Event
- Edit Event
- Delete Event
- Fetch Events
- Register for Event
- Duplicate Registration Prevention
- Capacity Validation
- Registration Cutoff Validation
- View Attendees
- Search Attendees
- CSV Export
Create a .env.local file:
MONGODB_URI=your_mongodb_connection_string
NEXTAUTH_SECRET=your_secret_key
NEXTAUTH_URL=http://localhost:3000git clone https://github.com/SrashtiChauhan/PulseMeet.gitcd PulseMeetnpm installCreate:
.env.local
Add the required variables.
npm run devOpen:
http://localhost:3000
Detailed project documentation is available in the /docs directory.
- API Documentation
- Architecture Documentation
- Deployment Guide
- Functional Architecture Document (FAD)
- Feature Traceability List (FTL)
- Product Requirements Document (PRD)
- System Architecture Document (SAD)
- Technical Architecture Document (TAD)
Potential future improvements include:
- Event Categories
- Event Images & Banners
- Social Authentication
- Email Notifications
- Analytics Dashboard
- Event Discovery Filters
- Attendance Tracking
- Community Event Recommendations
Srashti Chauhan
This project is intended for educational, learning, and internship evaluation purposes.



