A scalable full-stack event platform built with Next.js, MongoDB, and Redis, designed for real-world performance and optimized API handling.
- Reduced API response time from 1300ms → 10ms using Redis caching
- Utilized Next.js hybrid rendering (SSR + CSR) for optimized performance and user experience
- Implemented secure JWT Authentication + Role-Based Access Control
- AI-powered event descriptions using Gemini API
- Designed efficient cache invalidation strategy
| Landing Page | Events Listing | AI Event Creation |
|---|---|---|
![]() |
![]() |
![]() |
- JWT Authentication (Login/Register)
- Role-Based Access Control (User / Organizer / Admin)
- Event Creation, Update, Delete
- Event Registration System
- Attendees Management
- Redis Caching for High Performance
- Cache Invalidation Strategy
- RESTful APIs using Next.js App Router
- Custom 404 (Not Found) Page
- Frontend & Backend: Next.js (App Router)
- Database: MongoDB (Mongoose)
- Caching: Redis
- Authentication: JWT (JSON Web Tokens)
- Styling: Tailwind CSS
│
├── app/
│ ├── api/
│ │ ├── auth/
│ │ │ ├── login/route.js
│ │ │ └── register/route.js
│ │ │
│ │ ├── events/
│ │ │ ├── route.js
│ │ │ ├── [id]/
│ │ │ │ ├── route.js
│ │ │ │ ├── attendees/
│ │ │ │ │ └── route.js
│ │ │ │ └── register/
│ │ │ │ └── route.js
│ │ │
│ │ └── user/
│ │ └── my-registered/
│ │ └── route.js
│ │
│ ├── events/
│ │ ├── page.jsx
│ │ └── [id]/page.jsx
│ │
│ ├── not-found.jsx
│ ├── layout.jsx
│ └── page.jsx
│
├── components/
│ ├── ui/
│ └── common/
│
├── lib/
│ ├── db.js
│ ├── redisClient.js
│ └── utils.js
│
├── models/
│ ├── User.js
│ └── Event.js
│
├── styles/
│
└── constants/
git clone https://github.com/your-username/eventify-ai.git
cd eventify-ainpm installCreate a .env file:
MONGODB_URI=your_mongodb_connection
JWT_SECRET=your_secret_key
GEMINI_API_KEY=asdfghjkmnbvcxnpm run devApp will run at:
http://localhost:3000
- GET requests → Cached in Redis
- POST/PUT/DELETE → Cache invalidation
- Per-event caching →
event-attendees:{id} - Per-user caching →
my-registered:{email}
- User registers / logs in
- JWT token stored in cookies
- Protected routes verify token
- Role-based access control implemented
GET /api/events
POST /api/events/:id/register
GET /api/events/:id/attendees
- Custom 404 page using
not-found.jsx - API-level error responses with proper status codes
- Middleware-based authentication
- Pagination & filtering
- Admin dashboard
- Real-time updates (WebSockets)
Vaishnavi Full Stack Developer 🚀


