Inspiration

We were inspired by the inefficiencies and biases in traditional matchmaking platforms. Many modern apps tend to prioritize superficial metrics like appearance or popularity over genuine compatibility. We wanted to build something that emphasizes deeper connections using a scientific approach. That's how Cupid's Arrow was born — blending the Gale-Shapley algorithm with thoughtfully designed survey questions to match people based on compatibility.

What it does

Cupid's Arrow is a matchmaking platform that uses the Gale-Shapley stable matching algorithm to pair users based on their responses to a custom-designed compatibility survey. Users answer a series of questions about values, interests, and preferences. The system then processes these inputs to form stable and meaningful pairings, ensuring that no two users would both prefer to be matched with someone else over their assigned partner.

How we built it

We built Cupid's Arrow as a web application using:

  • Frontend: React and Typescript for a responsive and interactive UI.
  • Backend: React and Python to handle survey submissions and API endpoints.
  • Algorithm: A custom implementation of the Gale-Shapley algorithm in our Python backend, with Cosine Similarity to determine compatibility and preferences.

Challenges we ran into

  • Designing survey questions that are meaningful and provide enough data for effective matchmaking.
  • Implementing the Gale-Shapley algorithm and adapting it for situations where the user pool is uneven.
  • Ensuring data privacy and securely handling user responses.
  • Managing state and data flow smoothly between frontend and backend, especially under time constraints.

Accomplishments that we're proud of

  • Successfully implementing a fully functioning version of the Gale-Shapley algorithm paired with Cosine Similarity in a web-based platform.
  • Creating a clean, intuitive, and user-friendly interface.
  • Achieving real-time stable matching with meaningful survey data.
  • Working collaboratively under tight deadlines and integrating everyone's contributions smoothly.

What we learned

  • How to implement and adapt theoretical algorithms like Gale-Shapley in practical applications.
  • The importance of crafting effective survey questions to ensure valuable matchmaking data.
  • Strengthened our skills in full-stack development and rapid prototyping.
  • How to prioritize features and manage our time efficiently in a hackathon environment.

What's next for Cupid's Arrow

  • Incorporating reinforcement-based machine learning to further refine matchmaking based on historical pairing data, or user profiles.
  • Enhancing the user experience with features like chat integration and event-based matching.
  • Expanding to support larger-scale matchmaking events, such as university socials or professional networking sessions.
  • Implementing stronger encryption and privacy measures to protect user data.

Built With

Share this project:

Updates