Inspiration
The University of Toronto has nearly 1,500 clubs, making it overwhelming for students to find ones that align with their interests. With so many options, students often miss out on clubs that could enhance their university experience. Our goal was to simplify this process by leveraging AI to categorize clubs and implementing a Tinder-like swiping system for easy discovery.
What it does
Club-Connect helps UofT students discover clubs that match their interests. Users create an account, select their initial preferences, and then swipe left or right on clubs to indicate interest. The app utilizes AI to categorize clubs and a matchmaking algorithm that refines recommendations based on user interactions, ensuring personalized suggestions over time.
How we built it
- Frontend: Built using React and TailwindCSS for a responsive and visually appealing UI.
- Backend: Developed with Flask, handling authentication, recommendations, and AI integration.
- Database: SQLAlchemy for managing user accounts and preferences.
- Data Collection: We webscraped UofT’s club directory to gather club names, descriptions, and other details.
- AI Categorization: Used OpenAI’s API to automatically categorize clubs into different interest groups.
- Matchmaking Algorithm: Analyzes user preferences and previous swipes to refine recommendations, ensuring better matches over time.
Challenges we ran into
- Data Processing: Extracting relevant information from UofT’s club directory was complex due to inconsistencies in formatting.
- AI Categorization: Ensuring that clubs were categorized correctly required fine-tuning prompts and handling edge cases.
- Matchmaking Logic: Balancing personalization while maintaining diversity in recommendations.
- Authentication & Storage: Implementing a secure and scalable user authentication system with SQLAlchemy.
Accomplishments that we're proud of
- Successfully webscraped and processed data from UofT’s club directory.
- Integrated AI to categorize clubs, making the discovery process more intuitive.
- Designed a seamless Tinder-like swiping system for club matching.
- Built a matchmaking algorithm that continuously improves recommendations based on user interactions.
- Developed a fully functional and visually appealing app within the hackathon timeframe.
What we learned
- Improved our skills in web scraping and handling large datasets.
- Gained experience with AI integration for categorization and personalization.
- Learned how to balance user preferences with discovery in a recommendation system.
- Strengthened our ability to build full-stack applications efficiently.
What's next for Club-Connect
- More Detailed Club Profiles: Adding club meeting times, social media links, and contact details.
- Event Integration: Allowing clubs to post upcoming events that match user interests.
- Enhanced AI Matching: Further refining the matchmaking algorithm with more user data and feedback.
- Mobile App Development: Expanding the platform to mobile for a better user experience.
- Social Features: Enabling users to see mutual interests and connect with club members directly.
Built With
- flask
- react
- sqlalchemy
- tailwindcss
Log in or sign up for Devpost to join the conversation.