Overview कार्यकारी सारांश
EventEase is a full-stack, cloud-optimized event management platform built to merge the capabilities of two previously separate products: EventEase (smart scheduling + Google Calendar sync) and EventPro (event creation, listing, and role-based dashboards). This unified application simplifies event planning through a modular, scalable architecture using MERN stack, Redux Toolkit, AWS Lambda, and Vercel CI/CD. इवेंटईज़ एक फुल-स्टैक, क्लाउड-अनुकूलित इवेंट प्रबंधन मंच है, जो दो पहले अलग-अलग उत्पादों की क्षमताओं को एकीकृत करने के लिए बनाया गया है: इवेंटईज़ (स्मार्ट शेड्यूलिंग + Google कैलेंडर सिंक) और इवेंटप्रो (इवेंट निर्माण, लिस्टिंग, और भूमिका-आधारित डैशबोर्ड)। यह एकीकृत एप्लिकेशन मॉड्यूलर, स्केलेबल आर्किटेक्चर का उपयोग करके इवेंट प्लानिंग को सरल बनाता है, जिसमें MERN स्टैक, Redux Toolkit, AWS Lambda, और Vercel CI/CD शामिल हैं।
Developed by Sanjay Patidar, the platform is live at eventunified.vercel.app with source code available at GitHub. संजय पाटीदार द्वारा विकसित, यह मंच eventunified.vercel.app पर लाइव है, और इसका स्रोत कोड GitHub पर उपलब्ध है।
Project Objectives प्रोजेक्ट उद्देश्य
Goal उद्देश्य | Description विवरण |
---|---|
Merge two apps into one दो ऐप्स को एक में मिलाएँ | Unified two separate workflows without breaking legacy flows दो अलग-अलग वर्कफ़्लो को एकीकृत किया बिना पुराने प्रवाह को तोड़े |
Enable event scheduling इवेंट शेड्यूलिंग सक्षम करें | Build and connect with Google Calendar API Google Calendar API के साथ निर्माण और कनेक्शन |
Simplify event CRUD इवेंट CRUD को सरल बनाएँ | Add, update, and list events with pagination and validation पेजिनेशन और वैलिडेशन के साथ इवेंट जोड़ें, अपडेट करें और सूचीबद्ध करें |
Support real-time dashboards वास्तविक समय डैशबोर्ड समर्थन | Separate dashboards for users and admins उपयोगकर्ताओं और प्रशासकों के लिए अलग-अलग डैशबोर्ड |
Provide seamless auth निर्बाध प्रमाणीकरण प्रदान करें | Support both Google OAuth and email-password login via Passport.js Passport.js के माध्यम से Google OAuth और ईमेल-पासवर्ड लॉगिन दोनों का समर्थन |
Cloud-native scalability क्लाउड-नेटिव स्केलेबिलिटी | Use serverless backend with AWS Lambda and CI/CD-enabled frontend AWS Lambda के साथ सर्वरलेस बैकएंड और CI/CD-सक्षम फ्रंटएंड का उपयोग |
Architecture Summary सिस्टम आर्किटेक्चर

Components: घटक:
- Frontend: React, Redux Toolkit, Styled Components, hosted on Vercel फ्रंटएंड: React, Redux Toolkit, Styled Components, Vercel पर होस्टेड
- Backend: Node.js + Express on AWS Lambda, MongoDB Atlas for storage बैकएंड: AWS Lambda पर Node.js + Express, MongoDB Atlas डेटा संग्रहण के लिए
- Security: JWT Auth, session-based routing, input validation सुरक्षा: JWT प्रमाणीकरण, सत्र-आधारित रूटिंग, इनपुट सत्यापन
- Integration: Google Calendar via googleapis library एकीकरण: googleapis लाइब्रेरी के माध्यम से Google Calendar
- DevOps: Vercel CI/CD, CloudWatch for monitoring DevOps: Vercel CI/CD, निगरानी के लिए CloudWatch
Modules and Routes मॉड्यूल और रूट्स
Module मॉड्यूल | Key Routes मुख्य रूट्स | Features विशेषताएँ |
---|---|---|
EventEase | /eventease/create-event, /eventease/login | Calendar integration (soon), smart scheduling, user-facing forms कैलेंडर एकीकरण (जल्द ही), स्मार्ट शेड्यूलिंग, उपयोगकर्ता-मुखी फॉर्म |
EventPro | /eventpro/add-event, /eventpro/dashboard | Event CRUD, dashboards, admin control इवेंट CRUD, डैशबोर्ड, प्रशासक नियंत्रण |
Global | /login, /register, /forgot-password | Auth flows using JWT & Google OAuth JWT और Google OAuth का उपयोग करके प्रमाणीकरण प्रवाह |
Key Features मुख्य विशेषताएँ
- Authentication: Integrated Passport.js for Google + Email login, JWT in HTTP-only cookies, middleware-based route protection प्रमाणीकरण: Google + ईमेल लॉगिन के लिए Passport.js एकीकृत, HTTP-only कुकीज़ में JWT, मिडलवेयर-आधारित रूट संरक्षण
- Calendar Integration: FullCalendar component for events, Google Calendar sync planned, moment.js/dayjs for date handling कैलेंडर एकीकरण: इवेंट्स के लिए FullCalendar घटक, Google Calendar सिंक की योजना, तारीख प्रबंधन के लिए moment.js/dayjs
- Event CRUD: Admin dashboard for event management, MongoDB Atlas storage, express-validator for validation इवेंट CRUD: इवेंट प्रबंधन के लिए प्रशासक डैशबोर्ड, MongoDB Atlas संग्रहण, सत्यापन के लिए express-validator
- User Dashboard: Role-based views for registered events using Redux and JWT उपयोगकर्ता डैशबोर्ड: Redux और JWT का उपयोग करके पंजीकृत इवेंट्स के लिए भूमिका-आधारित दृश्य
- Form Handling: Live validation, toasts, and field-level feedback with Redux slices फॉर्म हैंडलिंग: Redux स्लाइस के साथ लाइव सत्यापन, टोस्ट, और फ़ील्ड-स्तरीय फीडबैक
Challenges and Solutions चुनौतियाँ और समाधान
Problem समस्या | Solution समाधान |
---|---|
Two separate legacy codebases दो अलग-अलग पुराने कोडबेस | Refactored into a shared Redux structure and modular routing साझा Redux संरचना और मॉड्यूलर रूटिंग में रिफैक्टर्ड |
Maintaining route protection रूट संरक्षण बनाए रखना | Built a central route guard using decoded JWT and role check डिकोडेड JWT और भूमिका जाँच का उपयोग करके केंद्रीय रूट गार्ड बनाया |
Google Calendar integration complexity Google Calendar एकीकरण जटिलता | Used googleapis npm package with OAuth2 strategy, stored tokens securely OAuth2 रणनीति के साथ googleapis npm पैकेज का उपयोग, टोकन सुरक्षित रूप से संग्रहीत |
Cross-module state conflicts क्रॉस-मॉड्यूल स्टेट टकराव | Introduced slice scoping, separated state keys by domain स्लाइस स्कोपिंग शुरू की, डोमेन के आधार पर स्टेट कुंजी अलग की |
Form re-renders and async flickers फॉर्म री-रेंडर और एसिंक फ्लिकर | Solved using React.memo and Toastify feedback React.memo और Toastify फीडबैक का उपयोग करके हल किया |
Backend Structure (Render + Serverless) बैकएंड संरचना (Render + सर्वरलेस)

Component घटक | Functionality कार्यक्षमता |
---|---|
authHandler.js | Google OAuth, email login, JWT generation, session handling Google OAuth, ईमेल लॉगिन, JWT जनरेशन, सत्र प्रबंधन |
eventHandler.js | CRUD logic for events; all protected routes इवेंट्स के लिए CRUD तर्क; सभी संरक्षित रूट्स |
calendarHandler.js | Google Calendar stub functions; sync events coming soon Google Calendar स्टब फ़ंक्शन; इवेंट्स सिंक जल्द ही |
userSchema.js | Role-based user model using Mongoose Mongoose का उपयोग करके भूमिका-आधारित उपयोगकर्ता मॉडल |
eventSchema.js | Indexed MongoDB schema with timestamps, repeat flags टाइमस्टैम्प, दोहराने वाले फ़्लैग के साथ इंडेक्स्ड MongoDB स्कीमा |
Middleware | checkAuth, validateInput, handleErrors checkAuth, validateInput, handleErrors |
Deployment & CI/CD तैनाती और CI/CD

- Frontend: Deployed to Vercel, auto-built on GitHub push फ्रंटएंड: Vercel पर तैनात, GitHub पुश पर स्वचालित रूप से निर्मित
- Backend: Hosted on Render, structured to migrate to full AWS Lambda API Gateway model बैकएंड: Render पर होस्टेड, पूर्ण AWS Lambda API Gateway मॉडल में माइग्रेट करने के लिए संरचित
- Domain: eventunified.vercel.app with clean route separation डोमेन: eventunified.vercel.app स्वच्छ रूट पृथक्करण के साथ
- Monitoring: CloudWatch logs and potential Nodemailer alerts निगरानी: CloudWatch लॉग्स और संभावित Nodemailer अलर्ट
- Security: HTTPS, JWT-based token flow, CORS, .env credential loading सुरक्षा: HTTPS, JWT-आधारित टोकन प्रवाह, CORS, .env क्रेडेंशियल लोडिंग
Performance Metrics प्रदर्शन मेट्रिक्स
Metric मेट्रिक | Result परिणाम |
---|---|
First Load Time पहली लोड समय | ~900ms (cached via Vercel CDN) |
Lighthouse Score लाइटहाउस स्कोर | 98 Performance, 100 Accessibility |
Page Latency पेज विलंबता | -25% after async data fetching refactor |
Auth Success Rate प्रमाणीकरण सफलता दर | 100% with JWT + Google OAuth fallback |
Uptime अपटाइम | 99.9% (CI/CD auto-redeploy + serverless infra) |
Future Scope भविष्य की योजना
Feature फीचर | Description विवरण |
---|---|
Google Calendar Write Sync Google Calendar लेखन सिंक | Sync user-created events with Google Calendar (2-way) उपयोगकर्ता-निर्मित इवेंट्स को Google Calendar के साथ सिंक करें (दो-तरफ़ा) |
Multi-Tenant Mode मल्टी-टेनेंट मोड | Support for different organizations via subdomain isolation सबडोमेन अलगाव के माध्यम से विभिन्न संगठनों के लिए समर्थन |
Admin Reporting Panel प्रशासक रिपोर्टिंग पैनल | Analytics, event stats, and attendance exports विश्लेषण, इवेंट आँकड़े, और उपस्थिति निर्यात |
PDF Badge Generator PDF बैज जनरेटर | Issue participation badges to attendees उपस्थित लोगों को भागीदारी बैज जारी करें |
AWS Migration AWS माइग्रेशन | Move backend fully to AWS Lambda and remove Render dependency बैकएंड को पूरी तरह से AWS Lambda पर ले जाएँ और Render निर्भरता हटाएँ |
Frequently Asked Questions
Common queries about the EventEase project, its technology, purpose, and deployment.
Is EventEase a real client project or a demo?
What tech stack powers EventEase?
How is authentication handled in EventEase?
Is Google Calendar integration live?
/sync-google-calendar
endpoint.
How is the backend deployed?
What performance benchmarks were achieved?
Can EventEase scale for multiple organizations?
Final Reflection अंतिम विचार
This project unified two distinct event management platforms into a single, scalable solution, reducing code duplication by 40% and improving performance through modular Redux and serverless architecture. इस प्रोजेक्ट ने दो अलग-अलग इवेंट प्रबंधन मंचों को एक एकल, स्केलेबल समाधान में एकीकृत किया, जिससे कोड दोहराव 40% कम हुआ और मॉड्यूलर Redux और सर्वरलेस आर्किटेक्चर के माध्यम से प्रदर्शन में सुधार हुआ।
Authored by: Sanjay Patidar, Full-Stack Web Developer लेखक: संजय पाटीदार, फुल-स्टैक वेब डेवलपर