Projects
Peekly: Engineering an AI-Powered Dating App
App Development, Startups

Peekly: Engineering an AI-Powered Dating App

A custom-built dating app by Phico leverages AI matchmaking and real-time chat to create meaningful connections at scale.

Introduction

At Phico, we're always looking for ways to innovate and push the boundaries of what technology can do. Our latest project, Peekly, is an AI-powered dating app designed to help people make meaningful connections based on compatibility, not just looks. From the algorithms driving matchmaking to the sleek user interface, Peekly is a product built with the latest technologies and designed with user experience at its core.

The Tech Stack: Building the Backbone

For Peekly's mobile app, we chose React Native, as it provides the flexibility to build native applications for both Android and iOS while maintaining a single codebase. This ensures fast development cycles and an optimal user experience across platforms.

On the backend, we've leveraged AdonisJS, a Node.js framework that brings scalability and structure, paired with a SQL database for efficient data management. The app's API is hosted on Google Cloud Run, a serverless platform that gives us the ability to automatically scale the app based on demand, ensuring reliability and responsiveness no matter how many users join.

Machine Learning-Powered Matchmaking

What truly sets Peekly apart is the matchmaking algorithm. Rather than relying on superficial swipes, the app uses multiple factors to calculate compatibility:

  1. Clustering Users by Location: First, the app uses a greedy clustering algorithm to group users within a 30km radius, ensuring that users are matched with people in close proximity to one another. This helps users meet others they could realistically date.
  2. Personality Compatibility: The personality score is based on the Big 5 personality traits. For each trait, users input their preferences, and the app uses curated equations to create a compatibility matrix for each pair. The result? A geometric mean that combines all the factors, giving us an accurate representation of how well users align on a personality level.
  3. Interests Compatibility: The app asks users to fill out their interests, which are then compared using a sentence transformer powered by pretrained weights. This generates a similarity matrix between users, helping us match people with similar hobbies, goals, and passions.
  4. Physical Attraction: Peekly uses users' physical appearance and preferences, given by the user, to determine compatibility. Besides user input, Peekly also uses a proprietary machine learning algorithm built with PyTorch to match people based on their biometric signatures in profile photos. This allows us to match users with similar physical preferences and appearances.
  5. Final Compatibility Score: Once the three scores — personality, interests, and physical attraction — are calculated, the app uses the geometric mean of these scores to generate a final match score. A greedy matching algorithm, inspired by the Stable Marriage Problem, ensures that the best possible matches are made based on these scores.

Data Privacy and Security

All the data and algorithms behind the matchmaking process are managed entirely by Peekly. We've made sure that no personal data is shared with third-party providers, except for the Google Cloud Run services that host the app's backend. This means users' data stays secure and confidential throughout the matchmaking process. Additionally, when integrating OpenAI's API for activity suggestions, we make sure that no personal information is tied to the interests sent to OpenAI, further protecting user privacy.

Innovative User Experience

The onboarding process in Peekly is designed to be both comprehensive and intuitive, as the app targets users who are serious about dating. The extended onboarding process filters out those who are not ready for a committed relationship. Moreover, to reduce the prevalence of bots and fake profiles, we've introduced a unique feature: users are required to upload a selfie and a selfie video for verification. AI helps verify that the photo is indeed of a human, preventing misleading profile pictures.

In another attempt to minimize ghosting and ensure deeper connections, Peekly allows users to have only one match at a time, which encourages more meaningful conversations and commitment.

Peekly Onboardin3 of Peekly's Onboarding Steps

Scalable Infrastructure

The app's architecture is designed to handle large-scale user engagement. By utilizing Google Cloud Run, Peekly can scale seamlessly as our user base grows, ensuring high availability and fast response times for matchmaking. The algorithm runs once a day per location at 4 p.m. local time to provide timely match notifications.

For real-time chat, we leverage Firestore, ensuring blazing-fast communication. In the future, we plan to enhance chat speed and stability with Server-Sent Events (SSE) and Redis for Cloud Run instance communication, making it more cost-effective at scale.

Future Vision: Expanding Peekly's Capabilities

Peekly is continuously evolving, with new features in development to enhance the matchmaking experience even further. One of the upcoming features is music-based compatibility matching, which will analyze users' favorite artists and songs to determine a music match score. This feature will also suggest songs that both users might enjoy, adding another layer of connection beyond traditional compatibility metrics.

On a longer timeline, Peekly plans to introduce an AI-powered relationship coach. This AI assistant will help couples improve communication, navigate relationship challenges, and gain deeper insights into their compatibility. Additionally, future enhancements to the AI will focus on better understanding user interests and personalities, refining the matchmaking algorithm for even more accurate pairings.

Conclusion

Peekly is a strong example of Phico's ability to design and build complete, production-grade products from the ground up. We handled everything — from the app's architecture and infrastructure to the machine learning systems behind the matching algorithm. This included building custom ML models, optimizing for scale, and designing a smooth user experience tailored to the app's purpose.

By combining deep technical knowledge with product thinking, we delivered a reliable, privacy-conscious platform that solves a complex problem in a novel way. If you're looking for a team that can take on technically challenging projects and deliver polished, user-focused results, Phico can help.

Peekly AppThe Peekly App