EventHub is an Android application built with Kotlin that enables seamless event management and social interaction. The app allows users to create, discover, and interact with events while connecting with other users. It leverages Firebase for backend services and provides a rich, engaging experience through real-time features and a user-friendly design.
EventHub is built with a modular architecture that organizes functionality into feature-specific components. The main activity uses a bottom navigation bar to manage fragments and navigate between sections. Key architectural components include:
- Main Activity with bottom navigation (Home, Profile, Chats)
- Fragment-based navigation system to streamline in-app transitions and user experience
EventHub uses Firebase Authentication to enable a secure, flexible authentication system, providing users with seamless sign-in and sign-up options.
- #/# functionality
- Profile management with the ability to upload profile images
Users can manage events effortlessly, including creating, updating, and deleting events. EventHub also supports image uploads and date selection to enhance the event creation experience.
- Create, read, update, delete (CRUD) events
- Image upload capability for event banners and profiles
- Date selection with an interactive calendar dialog
Enhancing the social aspect, EventHub includes real-time interactions and communication options to keep users connected and engaged with ongoing events.
- Real-time chat system for one-on-one or group communication
- Comment functionality on events for user feedback and interaction
- Like and registration system to boost engagement on events
- Event sharing with deep links to allow easy sharing and access
EventHub is designed with Material Design principles, ensuring a consistent and modern user interface across different devices.
- Material Design implementation for intuitive UI
- Custom themes supporting both light and dark modes
- RecyclerView for efficient list rendering
- SwipeRefreshLayout for refreshing event data
- Progress indicators to improve user feedback during loading states
EventHub integrates Firebase services to provide a reliable backend for data storage, real-time communication, and authentication.
- Firebase Realtime Database to store event and user data
- Firebase Storage for storing user and event images
- Firebase Authentication to manage secure user access
To get a local copy up and running, follow these steps.
- Android Studio
- Firebase Project for API keys and configuration
-
Clone the repository:
git clone https://github.com/bishwathakur/EventHub.git
-
Open the project in Android Studio.
-
Set up Firebase:
- Create a Firebase project.
- Enable Authentication, Realtime Database, and Storage.
- Download the
google-services.json
file and add it to theapp
directory.
-
Build and run the project.
Contributions are welcome! If you'd like to improve EventHub, please fork the repository and create a pull request. For major changes, open an issue first to discuss what you’d like to change.
This project is licensed under the MIT License - see the LICENSE file for details.
EventHub brings people together through events and social interaction. Enjoy exploring and managing events with this versatile app!