Skip to content

Event Mania is a web based platform connecting students and colleges through events. Discover, register, and manage events effortlessly with this all-in-one event management solution!

Notifications You must be signed in to change notification settings

kushyanthpothi/EventMania

Repository files navigation

πŸŽ‰ Event Mania

The Ultimate Campus Event Management Platform

Event Mania is a comprehensive event management platform designed for educational institutions, enabling seamless event creation, registration, and management across multiple user roles. From cultural fests to hackathons – we bring everything under one roof.

Next.js React Firebase Tailwind CSS

🌟 Features

πŸŽͺ Event Discovery & Registration

  • Browse and discover exciting events from colleges across the country
  • Filter events by category (Technical, Cultural, Sports, Workshops)
  • Separate intra-college and inter-college events
  • One-click event registration with instant confirmation
  • Real-time event updates and notifications

πŸ‘₯ Multi-Role Support

  • Students - Discover and register for events
  • College Admins - Create and manage college events
  • Super Admins - Oversee platform operations and approvals
  • Companies - Organize inter-college events

πŸ” Secure Authentication

  • Google OAuth integration via Firebase Auth
  • Role-based access control (RBAC)
  • Student verification by college admins
  • College admin approval by super admins

πŸ“Š Analytics Dashboard

  • Event-wise participation tracking
  • Registration statistics
  • Popular events insights
  • Platform-wide analytics for super admins

πŸ”” Real-time Notifications

  • Event registration confirmations
  • Account verification updates
  • Event reminders
  • Admin approval notifications

🎨 Modern UI/UX

  • Beautiful, responsive design with Tailwind CSS
  • Smooth animations with Framer Motion
  • Dark mode support
  • Mobile-first approach

οΏ½ Screenshots

Landing Page

image

Event Discovery

image

Event Details

image

Student Dashboard

image

College Admin Dashboard

image

Event Creation

image

Registration Management

image

οΏ½πŸ› οΈ Tech Stack

Component Technology
Framework Next.js 16.0.7
Frontend React 19.2.0
Styling Tailwind CSS 4.0
Animations Framer Motion 11.15.0
Backend Firebase (Firestore)
Authentication Firebase Auth + Google OAuth
Database Firebase Firestore
Image Storage imgbb API
Charts Recharts 2.15.0
Notifications React Hot Toast 2.4.1
Icons React Icons 5.4.0
Date Handling date-fns 4.1.0

πŸš€ Getting Started

Prerequisites

  • Node.js 18+ installed
  • Firebase project set up
  • imgbb API key (for image uploads)

Installation

  1. Clone the repository

    git clone https://github.com/kushyanthpothi/EventMania.git
    cd EventMania
  2. Install dependencies

    npm install
  3. Set up environment variables

    Create a .env.local file in the root directory:

    # Firebase Configuration
    NEXT_PUBLIC_FIREBASE_API_KEY=your_api_key
    NEXT_PUBLIC_FIREBASE_AUTH_DOMAIN=your_auth_domain
    NEXT_PUBLIC_FIREBASE_PROJECT_ID=your_project_id
    NEXT_PUBLIC_FIREBASE_STORAGE_BUCKET=your_storage_bucket
    NEXT_PUBLIC_FIREBASE_MESSAGING_SENDER_ID=your_sender_id
    NEXT_PUBLIC_FIREBASE_APP_ID=your_app_id
    
    # Firebase Admin SDK
    FIREBASE_ADMIN_PROJECT_ID=your_project_id
    FIREBASE_ADMIN_CLIENT_EMAIL=your_client_email
    FIREBASE_ADMIN_PRIVATE_KEY=your_private_key
    
    # imgbb API
    NEXT_PUBLIC_IMGBB_API_KEY=your_imgbb_api_key
  4. Run the development server

    npm run dev
  5. Open your browser

    Navigate to http://localhost:3000

Build for Production

npm run build
npm start

πŸ“ Project Structure

event-mania/
β”œβ”€β”€ app/
β”‚   β”œβ”€β”€ components/          # Reusable components
β”‚   β”‚   β”œβ”€β”€ auth/           # Authentication components
β”‚   β”‚   β”œβ”€β”€ common/         # Common UI components
β”‚   β”‚   β”œβ”€β”€ events/         # Event-related components
β”‚   β”‚   └── layout/         # Layout components
β”‚   β”œβ”€β”€ context/            # React Context providers
β”‚   β”œβ”€β”€ hooks/              # Custom React hooks
β”‚   β”œβ”€β”€ lib/                # Utility libraries
β”‚   β”‚   β”œβ”€β”€ firebase/       # Firebase configuration
β”‚   β”‚   β”œβ”€β”€ imgbb/          # Image upload utilities
β”‚   β”‚   └── utils/          # Helper functions
β”‚   β”œβ”€β”€ dashboard/          # Dashboard pages
β”‚   β”œβ”€β”€ events/             # Event pages
β”‚   β”œβ”€β”€ login/              # Login page
β”‚   β”œβ”€β”€ signup/             # Signup page
β”‚   β”œβ”€β”€ about/              # About page
β”‚   └── globals.css         # Global styles
β”œβ”€β”€ public/                 # Static assets
β”œβ”€β”€ firebase.json           # Firebase configuration
β”œβ”€β”€ firestore.rules         # Firestore security rules
└── next.config.mjs         # Next.js configuration

πŸ”‘ Key Features Explained

User Roles & Permissions

Students

  • βœ… View all eligible events (intra & inter)
  • βœ… Register for events
  • βœ… Edit profile (photo, registration number)
  • βœ… View participation history
  • βœ… Receive email/SMS notifications
  • ❌ Cannot cancel registrations

College Admins

  • βœ… Create Intra Events (instant approval)
  • βœ… Create Inter Events (requires Super Admin approval)
  • βœ… Verify students from their college
  • βœ… View registered students
  • βœ… Access event analytics

Super Admins

  • βœ… Approve/reject College Admins
  • βœ… Approve/reject Inter Events
  • βœ… Platform-wide analytics
  • βœ… Manage all users and events

Authentication Flow

1. Student Signs Up (Google OAuth)
2. Selects College from Dropdown
3. Uploads Profile Photo
4. Enters Registration Number
5. Verification Request Sent to College Admin
6. College Admin Reviews & Approves
7. Student Account Activated
8. Email/SMS Confirmation Sent

πŸ‘₯ Team

Meet the passionate minds behind Event Mania:

  • Praveen Kumar - Team Leader
  • MahendraNath - Co-Leader
  • Venkatesh - Developer
  • Joshi - Designer
  • Kushyanth - Backend Developer

πŸ“Š Database Schema

Collections

  • users - User profiles and authentication data
  • colleges - College information and admin details
  • events - Event details and metadata
  • registrations - Event registration records
  • notifications - User notifications
  • verificationRequests - Student verification requests

πŸ”’ Security

  • Firebase Authentication with Google OAuth
  • Firestore Security Rules for data protection
  • Role-based access control (RBAC)
  • Protected API routes
  • Secure session management

🎨 Design Philosophy

  • Modern & Clean - Minimalist design with focus on content
  • Responsive - Mobile-first approach
  • Accessible - WCAG 2.1 AA compliant
  • Fast - Optimized loading and animations
  • Intuitive - Easy navigation and clear CTAs

πŸ“ License

This project is private and proprietary.

🀝 Contributing

This is a private project. For any questions or suggestions, please contact the team.

πŸ“§ Contact

For support or inquiries, reach out to us at:

πŸ™ Acknowledgments

  • Next.js team for the amazing framework
  • Firebase for the robust backend infrastructure
  • Tailwind CSS for the beautiful styling system
  • All contributors and supporters of this project

Made with ❀️ by the Event Mania Team

About

Event Mania is a web based platform connecting students and colleges through events. Discover, register, and manage events effortlessly with this all-in-one event management solution!

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published