Group 81
Inspiration
Everyone remembers growing up, hearing stories from their grandparents and parents about how they met their soulmate. Whether they may have met at a party, or were in class together, the first moment we spend with someone lays the foundation to that relationship and can often be the soil of what could sprout into something special. Unfortunately, as times have shifted, both due to unexpected challenges such as the COVID-19 pandemic, and as technology has started to play a bigger and bigger role in our everyday lives, meeting new people has become a challenge in this day and age.
Every day, millions of Canadians struggle with their mental health, oftentimes stemming from relationships, both platonic and romantic. In many cases, and I’m sure in everyone’s lives, there have been points where you may have faced difficulties meeting new people. This could arise from a multitude of factors, ranging from lack of confidence, or even something simple like changing workplaces or moving. Psychological studies from Anxiety Canada have shown that the number of people with Social Anxiety Disorder, has drastically increased over the years. This is largely due to the increased separation between people in how they communicate and spend time with each other. As a result, people are often emotionally and physically distressed as they are unable to form natural and authentic relationships with those around them.
Another unfortunate consequence of technological improvements is that people are spending a lot less time outside because of changes in social norm, which is hurting the people’s individual health. Many medical sources have documented the physical health benefits of spending even just a few minutes outside every day, yet lots of Canadians aren’t doing so.
What it does
Comprehensive anonymized profiling question set. An in-depth question set with a heavy focus on more personality-oriented traits are implemented to get the best possible understanding of a user. This in turn can help with future matchmaking steps. Of note, there were no extrinsically measured factors such as height or ethnicity taken into account since the fundamental purpose of Sprout is to break the outer barrier and get a peek into the person’s character.
Accurate and optimized matchmaking compatibility algorithm. A dynamically optimized compatibility algorithm is used to matchmake between users. This uses data from both users’ profiling questions and deterministically evaluates their similarities to predict potential compatibility. Of note, these can be tweaked by the user to seek a better fit (smaller match pool), or looser fit (larger match pool).
Proximity peer-to-peer network to detect and notify of potential matches. This is the highlight of the project and is what fundamentally sets Sprout apart from other matchmaking services. By only producing matches once two compatible users come within a physical proximity of each other, we ensure that first encounters are always in-person, aligning with our views on how healthy relationships should be seeded.
Post-meeting pairing through NFC tapping. After interacting and meeting each other in person, users are given the option to link up their accounts through NFC tapping. This gives the other user access to each other’s profiling questions for an in-depth analysis on similarities and differences. Additionally, it allows the users to keep contact by linking up personal details such as a phone number or a variety of social media accounts.
Cumulative match-counter. A running counter for the number of lifetime matches encountered. This serves two purposes as it boosts the user’s morale as they can see the pool of potential matches out there, while also allowing the user to tweak their match strength settings (ie. if they are getting a lot of matches, they can increase the matching threshold and vice versa).
How we built it
We used android-studio using Java along with a location and nearby API to establish the P2P network. We use quantitative analysis to develop a dynamic weighing algorithm to properly balance and determine potential matches.
Challenges we ran into
One of the biggest challenges we ran into was with the proximity feature, as the Nearby Connections API did not have the most thorough documentation, and was very hit-or-miss with the connectivity. Eventually, we were able to get that feature working. Another challenge we faced was the archaic-feeling UI designer in Android Studio, which limited us in our ability to create scenes and fragments.
Accomplishments that we're proud of
We are most proud of successfully creating the proximity pairing between devices as well as the matchmaking algorithm. It was also a learning experience for all of us, as we had never worked with Android Services or Location data to this extent in the past. We are all really proud to make a unique app in a somewhat saturated space that brings a whole new twist to online dating.
What we learned
Nearby API can be very finicky. We learned many powerful and important tools, especially pertaining to Android Studio. These include how to navigate callbacks with the Nearby Connections API, how to run and show Foreground and Background services, and how to handle notifications.
What's next for Sprout
Moving into the future we plan on continuing the project and expanding it to hopefully one day become a social service empire. Firstly, this involves dense expansion of the user base. Due to the inherent nature of peer-to-peer networks, they rely heavily on having an active and expansive user base. As such, leading up and directly following an initial launch, our goal is to heavily target one specific region or city, to build up a following there with the hopes that it will be able to spread from there based on word of mouth. Unlike other social apps, simply having high numbers does not necessarily lead to a good user experience, so we are placing a use emphasis on having a dense user base in specific regions.
Another key future expansion is into general social media. With the social media industry being heavily reliant on having an existing reputation and user base, we understand that it is not feasibly to directly enter that market and expect results. As such, we will be starting off in the more niche environment of matchmaking programs, as our matching algorithm is also more optimized for such occasions. Once sufficient success is seen in forming romantic relationships, our goal is to move towards forming and maintaining platonic ones as well, with the potential of even moving towards professional purposes such as for networking purposes.
Out ultimate goal is to continue developing and growing the program potentially into a small startup.
Built With
- android-studio
- java
- locationapi
- nearby-connectionsapi


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