Inspiration
The hackathon team formation process can be daunting. We've all experienced the struggle of finding teammates with complementary skills and shared goals. HackRMatch was conceived to streamline this process so participants can focus on innovation.
What it does
HackRMatch uses mathematically derived algorithms to suggest compatible hackathon teammates. Participants create a profile summarizing their skills, interests, and location. and the app analyzes this data to recommend potential team members.
How we built it
HackRMatch uses MongoDB, Express, React, and Node.js. We implemented authentication with Google OAuth Passport.js. The proprietary matching algorithm uses the Jaccard index to calculate the similarity coefficients.
Challenges we ran into
Authentication was a challenge we ran into; we ended up managing to implement Google authentication using Passport.js. Implementing the complex discrete math involved was challenging, though we persevered and the product speaks for itself.
Accomplishments that I'm proud of
I'm proud that we built an intuitive web app that solves a real problem we experienced firsthand. We built an algorithm that successfully matches hackers to their dream team, and our efficient data fetching along with the clean UI built with Chakra streamline the user experience.
What we learned
We learned how to successfully implement Chakra components to streamline our front end design process and write efficient and clean JSX code. We also learned and implemented the Jaccard Index into our matching algorithm, which strengthened our mathematical and computer science skills. Furthermore, we learned the virtues of project management, organization, and version control.
What's next for HackRMatch
Going forward, we hope to gather more data to improve match accuracy. We plan to implement messaging and add profile verification. Expanding the user base is another goal.
Built With
- chakra
- cloudinary
- dicebear
- express.js
- mongodb
- node.js
- passport
- react
- tailwind


Log in or sign up for Devpost to join the conversation.