Event Hub is a modern, intelligent event matching platform that connects people through meaningful experiences. Built with React, TypeScript, and powered by AI-driven matching algorithms, Event Hub helps users discover events that align with their interests and preferences.
- AI-Powered Recommendations: Advanced matching algorithm that learns from user preferences
- Personalized Event Discovery: Get events tailored to your interests and past interactions
- ML Insights: Machine learning insights to help you discover new interests
- Dark/Light Theme: Seamless theme switching with persistent preferences
- Responsive Design: Beautiful UI that works on all devices
- Intuitive Navigation: Clean, modern interface built with Tailwind CSS
- Secure Authentication: User registration and login system
- Profile Management: Customizable user profiles with preferences
- Event History: Track your event participation and preferences
- Create Events: Easy event creation with detailed information
- Join/Leave Events: Simple event participation management
- Event Categories: Organized events by categories and tags
- Location & Time: Comprehensive event details with maps and scheduling
- NLP Categorization: Automatic event categorization using natural language processing
- Preference Learning: System learns from your interactions to improve recommendations
- Smart Filtering: Advanced filtering options for event discovery
- Node.js (v16 or higher)
- npm or yarn package manager
-
Clone the repository
git clone https://github.com/AadiJo/EventHub.git cd EventHub -
Install dependencies
npm install
-
Start the development server
npm start
-
Open your browser Navigate to
http://localhost:3000to see the application.
npm start- Runs the app in development modenpm build- Builds the app for productionnpm test- Launches the test runnernpm eject- Ejects from Create React App (one-way operation)
src/
├── components/ # React components
│ ├── auth/ # Authentication components
│ │ ├── Login.tsx
│ │ └── Register.tsx
│ ├── CreateEvent.tsx # Event creation form
│ ├── Dashboard.tsx # Main dashboard with events
│ ├── LandingPage.tsx # Homepage
│ ├── MLInsights.tsx # Machine learning insights
│ ├── Navbar.tsx # Navigation component
│ └── Profile.tsx # User profile management
├── contexts/ # React contexts
│ ├── AuthContext.tsx # Authentication state
│ └── ThemeContext.tsx # Theme management
├── types/ # TypeScript type definitions
│ └── Event.ts # Event-related types
└── utils/ # Utility functions
├── matchingAlgorithm.ts # Event matching logic
├── mlPreferenceLearning.ts # ML preference learning
└── nlpCategorization.ts # NLP categorization
- Frontend: React 18, TypeScript
- Styling: Tailwind CSS
- Routing: React Router DOM
- Icons: Lucide React
- State Management: React Context API
- Build Tool: Create React App
The main hub where users can:
- View personalized event recommendations
- Browse all available events
- Join/leave events
- Access ML insights
Comprehensive event creation with:
- Event details (title, description, category)
- Location and timing information
- Attendee limits and tags
- Automatic categorization
Advanced algorithm that considers:
- User preferences and interests
- Past event interactions
- Event categories and tags
- Location proximity
Create a .env file in the root directory:
REACT_APP_API_URL=your_api_url_hereThe app supports both light and dark themes. Theme preferences are stored in localStorage and persist across sessions.
Event Hub is fully responsive and optimized for:
- Desktop computers
- Tablets
- Mobile devices
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add some amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
- Built with ❤️ using React and TypeScript
- Icons provided by Lucide React
- Styling powered by Tailwind CSS
For support or questions, please open an issue on GitHub or contact the development team.
Event Hub - Connecting hearts through meaningful events. 💖