Skip to content
This repository was archived by the owner on Jun 12, 2025. It is now read-only.

Bas3L3ss/event-management-platform

Repository files navigation

If you like this project, please star the repository!
------- 👇 Live Demo Below 👇 --------


Logo

Event Management & Advertisement Platform

landing-page

💡 Overview

A modern event management platform built with Next.js, designed to connect event organizers with attendees. This platform offers a seamless experience for discovering, creating, and managing events with features focused on user engagement and event promotion.

🎬 Demo

🔐 Seamless User Authentication

  • Register and login users effortlessly with Clerk Auth

    user-onboard user-login

📨 Social App-Like User Experience

  • Seamless user navigation and interaction (sub 0.1s latency)

    fast-navigation

  • Easy to deploy advertisement

    deploy-ads publish-ads

  • Social app like experience!

    social-app-like sharing

✨ Features

  • 📅 Event Management & Advertisement: Create, edit, manage, search and promote events with rich text descriptions
  • 👥 Media-like Experience: An interactive platform where users can follow each other and stay updated.
  • 🌟 Featured Events: Showcase premium events with enhanced visibility
  • 💬 Interactive Comments: Engage with attendees through a robust comment system
  • 📱 Responsive Design: Fully responsive interface across all devices
  • 🔐 User Authentication: Secure authentication powered by Clerk
  • 🎨 Theme Support: Light/dark mode with customizable UI
  • 📍 Location Integration: Map integration for event locations

👩‍💻 Tech Stack

  • Next.js 14: Server-side rendering and modern React features
  • TypeScript: Type-safe development environment
  • Prisma: Type-safe database access and management
  • Clerk: Authentication and user management
  • Tailwind CSS: Utility-first styling
  • Radix UI: Accessible component primitives
  • React query: Modern fetching pattern
  • React Hook Form: Form validation and handling
  • Zod: Schema validation
  • Supabase: File storage and database

📊 Performance Metrics

Metric Value
API Response Time < 80ms
Search Query Speed < 150ms
Event Creation Time < 3s
Full Page Load < 1.8s
Time to Interactive < 2.2s
Payment Processing < 2.5s
Core Web Vitals All "Good"

speed-insight

🚀 Technical Summary

  • Optimized data fetching with React Query and Next.js unstable_cache for improved performance
  • Full-text search recommendation system enabling users to discover relevant events quickly
  • Efficient cursor-based pagination for smooth infinite scrolling experiences
  • Deployed in ap-southeast-1 (sin-1) for low-latency API responses across Asia
  • Enhanced user experience with Optimistic UI for data modifications
  • Geospatial event discovery with Leaflet integration
  • Secure payment processing with Stripe for event promotion
  • Application Codebase robustness with integration and unit testing

📦 Getting Started

🚀 Prerequisites

  • Node.js (v18.x or higher)
  • npm or yarn
  • PostgreSQL database

🛠️ Installation

  1. Clone the repository:

    git clone https://github.com/Bas3L3ss/event-management-platform
    cd event-management-platform
  2. Install dependencies:

    npm install
  3. Set up environment variables: Create a .env file with:

     CLERK_ADMIN_ID =  ""
     NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY= ""
     CLERK_SECRET_KEY= ""
     STRIPE_SECRET_KEY = ""
     NEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY = ""
     DATABASE_URL =  ""
     DIRECT_URL =  ""
     SUPABASE_URL =  ""
     SUPABASE_KEY =  ""
     CLERK_WEBHOOK_SECRET = ""
  4. Run database migrations:

    npx prisma generate
    npx prisma db push
  5. Start the development server:

    npm run dev

📖 Usage

Visit http://localhost:3000 to access the application. Create an account to:

  • Browse and search events
  • Create and manage your own events
  • Interact with other users through comments
  • Follow event organizers
  • Book tickets for events

🤝 Contributing

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/AmazingFeature)
  3. Commit your changes (git commit -m 'Add some AmazingFeature')
  4. Push to the branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

📜 License

This project is licensed under the MIT License - see the LICENSE file for details.

🚀 Future Roadmap

  • 📊 Enhanced Analytics Dashboard

    • Real-time event performance metrics
    • Attendee engagement tracking
    • Custom reporting tools
  • 🎯 Smart Event Advertisement

    • AI-powered targeting recommendations
    • Automated promotional campaigns
    • Multi-channel marketing integration
  • 🔍 Advanced Search & Discovery

    • Vector-based similarity search
    • Personalized event recommendations
    • Interest-based event matching
  • 🤖 AI-Powered Features

    • Smart event categorization
    • Automated content moderation
    • Intelligent pricing suggestions
  • 📱 Enhanced User Experience

    • Improved mobile experience
    • Real-time notifications
    • Social media integration

Releases

No releases published

Packages

No packages published

Languages